我如何使用 Consul 来确保只有一个服务在执行一项任务?
我已经按照http://www.consul.io/中的示例进行操作,但我不能 100% 确定该走哪条路。我应该使用KV吗?我应该使用服务吗?或者我应该使用注册服务作为健康检查并使其可以在给定的时间间隔被集群调用?
例如,假设有几个数据中心。在每个数据中心内,都有许多服务正在运行。这些服务中的每一项都可以发送电子邮件。这些服务必须检查是否有任何电子邮件要发送。如果有,然后发送电子邮件。但是,我不希望多次发送同一封电子邮件。
它如何确保所有电子邮件都已发送,并且没有多次发送?
我可以使用其他技术来做到这一点,但我正在尝试使用 Consul 来实现这一点。