Default Message Types
Last updated
Last updated
Copyright 2013-2024 60East Technologies, Inc.
AMPS automatically loads modules for the following message types:
bson
Binary JSON (BSON) messages.
See for information on this format.
bflat
BFlat, a schemaless message format based on key-value pairs that includes support for binary representations of numeric data.
See for information on this format.
fix
FIX messages using numeric tags. FIX is a standard format widely used in the financial industry.
See for more information on this format.
json
JSON (JavaScript Object Notation) messages.
See for information on this format.
msgpack
MessagePack messages.
MessagePack is a schemaless serialization format designed to efficiently encode data.
See for more information on MessagePack.
nvfix
NVFIX (name/value FIX) messages.
NVFIX uses the same basic format as FIX, but allows tags to contain any byte that is not =
or the configured field separator character (by default, the ASCII SOH
character).
By contrast, FIX requires that tags are numeric.
xml
XML messages (of any schema)
binary
Uninterpreted binary payload.
Since this module does not attempt to parse the payload, it does not support content filtering, views and aggregates.
Likewise, because there is no set format for the payload, this message type cannot support features that construct messages (such as delta messaging, /AMPS/.*
topic subscriptions and stats
acks).
protobuf
Google protocol buffer messages.
To use this message type, you must configure a MessageType
with the format of the messages (the .proto
files).
With these message types, AMPS automatically loads the module that provides the message type. AMPS declares message types for all of the above message types except for protobuf
.
For efficiency, AMPS only parses the content of a message if required, and only to the extent required. For example, if AMPS only needs to find the id
tag in an NVFIX message, AMPS will not fully parse the message, but will stop parsing the message after finding the id
tag. This provides significant performance improvements, and also means that AMPS does not verify the format or validity of messages unless it needs to parse the messages. When AMPS parses a message, it may only partially parse a message, and may not detect corruption or invalid format in a message if that corruption occurs after the point at which AMPS has all of the required information from the message.
The FIX and NVFIX message types support configuration of the field and message delimiters.
AMPS also allows you to create new message types by assembling existing message types into a composite message. Composite message types are described in Composite Messages, and require additional configuration:
composite-global
Composite message type that combines message parts for content filtering. This message type combines one or more existing message types into a message.
This type of composite message does not distinguish between sections of the message when parsing the message.
This type is described in more detail in the section on composite-global
in .
composite-local
Composite message type, filterable by individual parts. This message type combines one or more existing message types into a message.
This type of composite message preserves information about the sections of the message when parsing the message.
This type is described in more detail in the section on composite-local
in .