Google容器引擎中的异步任务队列

时间:2017-11-08 18:27:52

标签: kubernetes google-kubernetes-engine

我正在尝试找出一种便携式方法,在我的群集中为谷歌容器引擎开发自定义但可扩展的任务队列。这是我有一个前端,捕获我的节点js实例中的用户详细信息的场景,这些详细信息被发送到api系统,后者又联系数据库,保存用户详细信息,并期望发送欢迎邮件。 我的问题是我不想使用相同的api端点方法来处理发送邮件请求,我需要另一个进程来处理我如何处理我的kubernetes基础设施?。我需要实现一个pub子类型系统发布到另一个容器?如果我这样做,这意味着所有订阅都会收到我的更新通知,但是如果我有2个子系统实例运行它会意味着他们都会观察更改并发送邮件两次。任何关于此的想法或想法将不胜感激。

1 个答案:

答案 0 :(得分:1)

我认为有两种合理的方法可以解决这个问题。

1:拥有一个服务,通过API接收邮件事件,并在接收到异步处理邮件后立即返回。使用kube服务,你只会遇到一个这样的服务,一个邮件将以非阻塞方式发送给呼叫服务,但它有缺点 - 即。如果出现故障会发生什么,邮件可能根本就不会生成。

2:我可能会寻找一些MQ(Kafka,Rabbit等),有任意数量的邮件服务实例消耗的消息队列,确保只有一个可以接收消息,并且需要一个确认消息或如果N min中没有确认则返回处理