1 背景
xTimer 是笔者开发的一款分布式定时任务调度工具,具体见:juejin.cn/post/717400…
xTimer 强依赖于 mysql、redis 组件,由于本人很穷,目前仅有一个 2G2核 的云服务器用以支持存储业务,所以在性能上受到了很大的掣肘,考虑到组件资源层面的限制,目前初步针对1000、2000 笔 定时器同时执行的场景进行了性能压测.
2 数据&分析
2.1 1000笔定时器压测
火焰图:
监控指标:
(1)成功率 100% 1000笔定时器全部执行,未发生遗漏; (2)延时指标难看 延时 99 分位线高达 2.4 s.
分析: 结合火焰图分析 CPU 耗时比例后可知,性能瓶颈主要由瞬时徒增的 redis 和 mysql 连接数引起,并不体现在流程逻辑层面.
2.2 2000笔定时器压测
火焰图:
监控指标:
(1)成功率 100% 2000笔定时器全部执行,未发生遗漏; (2)延时指标难看 延时 99 分位线飙升至 9.1 s.
2.3 压测分析
结合火焰图分析 CPU 耗时比例后可知,现阶段性能瓶颈主要由瞬时徒增的 redis 和 mysql 连接数引起,并不体现在流程逻辑层面.(太穷了 T.T)