我们希望在Google Cloud上构建主从模式。 我们计划使用Pub / Sub(类似于JMS模式)让每个工作人员从队列中获取任务并在完成后确认。
但是,似乎订阅者无法在启动之前收到消息。 我们不确定如何确保每个消息都由一个“奴隶”处理。
有办法吗?或谷歌云的另一种机制呢?
答案 0 :(得分:0)
据我了解主从模式,从设备并行执行任务,主人收获结果。我将创建一个排队任务的主题,以及附加到此主题的单个订阅,以便所有从属服务器使用此订阅来获取任务。
此外,我还创建了另一个主题/子对,用于从奴隶发布结果,主人收获结果。或者,结果可以存储到云数据存储区等共享数据存储区中。
答案 1 :(得分:0)
您可以通过创建比所有从属设备使用的“单一”订阅来完成此操作。 pubsub服务只为给定的订阅提供一次新消息,因此您可以确定给定的消息只能由1个从服务器处理。
您还可以相应地调整确认截止日期,以便不会发生传递重试。如果重试发生,则会导致多个从服务器收到相同的消息。