Low-latency Distributed Applications
Andrew Brook’s article, “Evolution and Practice: Low-latency Distributed Applications in Finance” offers a good read on low latency in finance. RFQ’s and RFS are appropriately covered coupled with the often overlooked “Clock synchronization” 🙂 More thread than cores is also discussed – context switch.
Hopefully these types of articles will aid in educating people on the decision made during the design of low latency architectures prior to them being implemented, and deployed into production, with sometimes unfortunate results.
To achieve low-latency with minimal variance, while achieving high throughput, it is important to define a set of design principles that guide the development. When a trade off is required then the design principles help guide the decision in choosing between competing alternatives.
There is no free lunch. Performance comes at a cost – $ and/or time to develop.