系统特点:
CPU密集型(千亿级/s计算量)
IO密集型(10w+qps I/O查询)
优化目标:
高吞吐(资源有限制下的高吞吐),高性能(ms级响应性能)
高吞吐:
流式化
请求访问采用多次复用的流式化:1、有一定实时性 2、充分利用资源
异步化
密集紧张资源的调用异步化:如重计算(计算占用CPU资源较多)异步化,I/O调用异步化
高性能:
资源缓存
政策体本地缓存,存在I/O瓶颈(redis流量:单实例4.3Gbs),redis查政策体响应时间由100ms降至40ms
计算优化
1、计算顺序:调整计算流程各属性优先级,如能决定最终计算结果的重要流程优先计算,减少不必要计算
2、请求预过滤:调用方能从业务数据上提前过滤掉无效请求/结果固定,提前进行预过滤,不进入计算流程
3、数据预剪枝:重计算通常是由于各计算数据量级叉乘带来(10w10w=>100w),可以根据一些业务特征做数据剪枝.提前剪枝了80%数据A, 80%的数据B->那么整体数据量级(2w2w=>2w),最终带来98%的计算量优化,收益很大
4、数据索引:计算过程中使用不经常改变数据进行结构化索引设置,索引key具有一定区分度且与计算主key相关联,value多为使用的中间计算结果