Google PubSub有序消息订阅为何需ACK后才能获取后续消息?
Google Pub/Sub有序消息的队列行为疑问
我正在通过简单示例深入了解Pub/Sub有序消息的工作机制,借助官方Python示例已成功向主题发布有序消息,并通过启用排序的订阅读取消息。
令我困惑的是,当发布以下消息集合时:
[ ("message1", "key1"), ("message2", "key1"), ("message3", "key1"), ("message1", "key2"), ("message2", "key2"), ]
通过Pull或StreamingPull读取时,Pub/Sub表现得更像队列,我只能获取初始消息:
[ ("message1", "key1"), ("message1", "key2"), ]
只有在ACK这些消息后,才能继续获取后续的message3和message2。这是否意味着对于排序键X,消息M+1需在消息M被ACK后才会在订阅中可用?这种队列行为是否符合预期,还是我忽略了某些关键点?
内容的提问来源于stack exchange,提问作者qnoxo
相关产品推荐
相关产品推荐

