gpt4 book ai didi

python - Google PubSub 消息重复

转载 作者:太空宇宙 更新时间:2023-11-03 14:25:23 24 4
gpt4 key购买 nike

我正在使用 python 客户端(作为 google-cloud 0.30.0 的一部分)来处理消息。有时(大约 10%)我的消息被重复。我会在几个小时内一次又一次收到多达 50 次相同的消息。我的订阅设置为 600 秒确认时间,但消息可能会在前一条消息之后一分钟重新发送。

运行时,我偶尔会收到 503 错误(我使用我的策略类进行记录)有人经历过这种行为吗?有什么想法吗?

我的代码看起来像

c = pubsub_v1.SubscriberClient(policy_class)    
subscription = c.subscribe(c.subscription_path(my_proj ,my_topic)
res = subscription.open(callback=callback_func)
res.result()

def callback_func(msg)
try:
log.info('got %s', msg.data )
...
finally:
ms.ack()

最佳答案

您正在使用的客户端库使用名为 StreamingPull 的新 Pub/Sub API 进行订阅。这样做的影响之一是不再使用您设置的订阅截止日期,而是由客户端库计算的截止日期。客户端库还会自动为您延长消息的截止日期。

当您收到这些重复的消息时 - 您是否在重新传递消息时已经确认了该消息,还是在您仍在处理该消息时?如果您已经确认,是否有一些消息您避免确认?有些消息如果被确认,可能会重复,但同一批处理的消息需要再次发送。

另请记住,如果您花费半小时以上的时间来处理消息,目前预计会出现一些重复消息。

关于python - Google PubSub 消息重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47673193/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com