确保第一个订阅者完成提取Google pub-sub主题后触发第二个订阅者

问题描述

我有2个订阅者,即同一主题的SUB1和SUB2。两个订户将从主题提取完全相同的消息。如何确保订阅者“ SUB2”仅在SUB1完成从主题提取消息之后才开始提取消息。 ...我的PUB-SUB来自Google云平台...

解决方法

如果消息发布到单个主题并且订阅都在该主题上,则没有真正好的方法来确保将消息先交付给一个订阅者。这也打破了作为pub / sub范式的一部分的去耦,即发布者不必了解订阅者,订阅者也不必彼此了解。

一个不错的选择是有两个主题。 SUB1将订阅第一个主题。作为消息处理的一部分,它将消息发布到第二个主题。 SUB2将订阅第二个主题。因此,您可以保证SUB2仅在SUB1处理完消息后才处理消息。这些类型的管道是Cloud Pub / Sub的一个非常典型的用例,其中管道的每个阶段都负责产生下一个阶段消耗的消息。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...