6.8 其他风险项1.由于time_pointer的CurrentTime初始值置为首次运行的Daemon实例的机器时间,而每次轮询时都会对比当前Daemon实例的机器时间与CurrentTime的差别,故机器时间出错可能会影响任务的正常调度 。这里考虑到现网机器均有时间校正脚本在跑,这个问题基本可以忽略 。
2.本系统的架构对事件中心构成了强依赖 。定时器的可用性和可靠性依赖于事件中心的可用性和可靠性 。虽然目前事件中心的可用性和可靠性都非常高,但如果要考虑所有异常情况,则事件中心的短暂不可用、或者对于订阅者消息出队的延迟和堆积,都是需要正视的问题 。一个解决方案是使用MQ做双链路的消息投递,解决对于事件中心单点依赖的问题 。
结语这里的定时器服务目前仅用于支持境外的定时器需求,调用量级尚不大,已可满足业务基本要求 。如果要支撑更高的任务量级,还需要做更多的思考和优化 。随时欢迎大家和和我交流探讨 。
【干货!如何实现一个分布式定时器】
推荐阅读
- 数据频繁变化的情况下,如何高效检索?
- SQL小技巧解决大问题:如何统计字符出现次数?
- 深入了解VLAN工作原理,不能错过干货
- Spring Boot 中如何统一 API 接口响应格式?
- 物业消防安全管理制度如何实施
- 金桔如何做饮品,青金桔发酵茶如何做
- 美国红枫,美国红枫小苗如何购买
- 古代是如何选妃的 看古代皇帝是如何选妃的?感觉身体被掏空
- 如何在个月内瘦30斤,月瘦10斤是否靠谱
- 新鲜玫瑰花瓣如何利用,菊花茶如何挑选