我在使用像Apache Kafka这样的事件/消息代理解耦两个系统时遇到了一个问题。该问题与前端触发后端操作有关:
如果发布者不知道消费后端的“身份”或数量,那么生产者(前端服务)如何知道已经正确处理所有后端服务(作为消费者)所发布的事件?
具体而言,用户可以使用前端 UI 更改其电子邮件地址。相关服务将“更改请求”事件发布到 Kafka 中的适当主题。然后,UI 表单被“锁定”,以防止后续的更改请求,直到每个消费者已完全处理更改事件,但如何检测此状态仍不明确。
如果发布者不知道消费后端的“身份”或数量,那么生产者(前端服务)如何知道已经正确处理所有后端服务(作为消费者)所发布的事件?
具体而言,用户可以使用前端 UI 更改其电子邮件地址。相关服务将“更改请求”事件发布到 Kafka 中的适当主题。然后,UI 表单被“锁定”,以防止后续的更改请求,直到每个消费者已完全处理更改事件,但如何检测此状态仍不明确。