1
jimmyismagic 2021-07-02 16:47:19 +08:00
用个 mq,多个服务同时消费,使用 queue 方式,谁拿到了谁消费谁推送
|
2
Aliencn 2021-07-02 17:13:56 +08:00
做一个选举和分配监控项的机制吧,每个后端服务采集和报警的项目都是独占的。
这样也避免了重复采集数据的问题,减少了被监控端的压力。 |
3
coolcoffee 2021-07-02 17:28:19 +08:00
Prometheus 的 Alertmanager 不是可以实现告警发送频率限制吗?
例如: 多个后端服务都指向同一个规则,然后设定 5 分钟推送一次,触发了一个之后,后面再触发就不会提醒了。 或者设定第一次告警等待一段时间,这段时间多次触发的告警会合并一起发送。 |
4
zhuichen 2021-07-02 17:54:55 +08:00 1
方法 1 、选举 master,只能 master 推送,master 挂了之后 slave 选举成为 master,撸一下 raft 算法或者直接用 zookeeper
方法 2 、推送时候,生成唯一标识,利用中间件做去重,记录某一段时间推送过的记录等 |
5
wfd0807 2021-07-02 18:08:25 +08:00
这难道不是分布式定时任务调度问题?
而且还是最简单的一种场景,使用 redis 的 setnx 吧 |
6
keepeye 2021-07-02 18:16:01 +08:00
借助 redis 吧 setnx 命令
|
7
loveyu 2021-07-02 18:22:57 +08:00
|