我目前有一个我需要监控的服务器/网站列表,每分钟一次。
有没有一种很好的方法可以每分钟循环一次,能够随时添加/删除服务器/网站?
我已经研究过RabbitMQ,但是每分钟不断地添加和使用任务似乎是不可行的。这些任务存储在MongoDB中,或许我想到的另一个解决方案是通过MongoDB查询,但这看起来效率不高。
答案 0 :(得分:0)
我认为不需要消息经纪人。我要做的是实际从数据库中获取任务并在程序开始时将它们存储在内存中。创建一个任务类,并为数据库中的每个任务在任务类中复制它,并将所有这些任务对象存储在任务数组中。
将该服务器/网站列表存储在数据库中。
让您的程序每分钟从该数据库查询服务器/网站列表,以获取最新的服务器/网站列表。您可以随时进入数据库并删除或添加服务器/网站。
假设您要为每个服务器/网站执行所有任务,您基本上可以执行每个任务数组中的所有任务。它本质上是另一个for循环中的for循环。
如果这个假设不正确,你会明白我的意思。
希望这有帮助。