在我们当前的设置中,我们有#34; n
" - 交易引擎,分布在多个主机和负载均衡器上,负载均衡器将传入的订单发送到其中一个引擎,容量。
以前,交易引擎是32位Linux进程,容量是根据进程的RSS
,VSZ
限制和引擎延迟(挂钟之间的时差)计算的时间和交易引擎时间)。
现在,我们正在迁移到64位进程。我想要一个很好的启发式来计算容量。
考虑到Linux如何管理进程的内存(过度提交),进程的RSS
可能非常高,因为RAM大小可用,未使用的页面可能不会被换出
我倾向于从计算可用容量中删除过程的记忆。相反,只依靠发动机滞后。
除了延迟之外,还要查看主机的内存利用率,以决定是否应该从该主机中挑选任何交易引擎来处理新订单。
我很想知道您对如何解决这个问题的想法和提示。