几乎每个业务应用程序都需要数据库来存储数据以及对该数据执行的事务。事务通常需要大约几毫秒的时间。同时,在交易应用程序中,一个完全不可接受的是“延迟”。那么,在这些应用程序中需要权衡取决于延迟的上限?
例如,客户已经进行了交易,它必须通过一些检查,这些检查存储在数据库中,需要进行数据库提取。然后,交易应该传递给OMS / ORS或交易所。而且,在每一层,都需要在数据库中存储某种交易数据。如何在事务持久性和低延迟之间保持平衡?
答案 0 :(得分:2)
两件事:
答案 1 :(得分:0)
现在人们使用内存交易系统,所以你减少了数据库获得的网络延迟。
以下是您可以考虑的低延迟
的一些事项- 尝试减少争用使用等待算法(这有点困难),锁定自由算法。你可以找到很多这样的例子
- 使用内存计算。内存很便宜,你可以在内存中有tera字节的数据。
- 使用技术上的同情 - 参考lmax disruptor,优秀的框架