通知/警报服务与数据库批量审计服务设计
1. 通知/警报服务设计
在设计通知/警报服务时,有多个关键方面需要考虑。
1.1 可用性监控与警报
通知服务不能用于正常运行时间监控,因为它与被监控的服务共享相同的基础设施和服务。若要将其作为通用的中断警报共享服务,当服务自身出现故障时,可借助外部设备(如位于不同数据中心的服务器)来解决。具体操作如下:
- 提供可安装在外部设备上的客户端守护程序。
- 服务定期向这些外部设备发送心跳信号。
- 外部设备配置为期望接收这些心跳信号。
- 若设备未在预期时间收到心跳信号,会查询服务以验证其健康状况:
- 若系统返回 2xx 响应,设备认为是临时网络连接问题,不采取进一步行动。
- 若请求超时或返回错误,设备通过自动电话、短信、电子邮件、推送通知等渠道向用户发出警报。
以下是该流程的 mermaid 流程图:
graph LR
A[服务] -->|定期发送心跳信号| B[外部设备]
B -->|未收到心跳信号| C{查询服务健康状况}
C -->|返回 2xx 响应| D[认为是临时网络问题,不行动]
C -->|请求超时或错误| E[通过多种渠道向用户警报]
1.2 其他可能的讨论话题
- Kafka 集群内存扩展 :必要时可扩展 Kafka 集群的内存。若队列中的事件数量随时间单调增加且通知未被传递,可采取以下措施:
超级会员免费看
订阅专栏 解锁全文
1823

被折叠的 条评论
为什么被折叠?



