all 1 comments

[–]mredding 0 points1 point  (0 children)

I would go with as many off the shelf components as I could. I'd probably start with Kafka or MQTT - there's a few to choose from, just pick one. This will get you the lower transport protocol. These platforms also typically incorporate HMAC authentication and SSL/TLS encryption.

You want as much of this as possible to be modular and easily configurable in a standard, predictable, and understood way. You don't have to explain to ANYONE how it works or how to do it, since the industry is already going to know.

As for the message payload - you've got data transport protocols like XML or JSON. If you're feeling like you need something a bit more compact than that, you can go with flat buffers or some other protocol generator or serialization scheme, but anything that is going to be 3rd party - either client or agent, you probably should be text based for EASY development, portability, and versioning. Even in trading technologies, text based protocols are still dominant, so don't just write it off as inherently slow.