我很好奇如何处理应用程序使用来自Google Pub / Sub的消息的升级/重新启动情况。
例如,我对开发一个Golang应用程序特别感兴趣,该应用程序部署在运行多个 pod 的 Kubernetes 中,并使用来自 Google Pub/Sub 的消息。我关心的是,如何确保在升级 Pod 时不会遗漏任何消息(或处理两次)。
我知道应用程序会从订阅中读取消息,然后必须确认它已收到它。我觉得在确认消息和 Pod 关闭以进行升级之间可能存在争用条件?
我知道使用Dataflow作业可以执行类似操作,因为您可以停止流式处理作业并发出信号以清空消息。
我假设必须有某种方式可以优雅地处理这个问题,或者这真的是数据流更适合的情况吗?
繁华开满天机
相关分类