【问题标题】:Is it possible to unacknowledge messages in synchronous pull for pubsub是否可以在同步拉取 pubsub 时取消确认消息
【发布时间】:2021-09-28 13:37:55
【问题描述】:
我正在通过订阅提取 pubsub 消息,并且需要在处理之前确认这些消息,因为我正在进行多处理,并且由于 grpc 模块而引发 SSL 损坏错误。
我想事先确认所有消息并在出现错误时取消确认,我知道我们可以为异步拉取执行此操作,但有没有办法在同步拉取中也可以实现取消确认?
我正在使用官方python模块从订阅中拉取
【问题讨论】:
标签:
python
google-cloud-platform
google-cloud-pubsub
【解决方案1】:
我想unack
你的意思是nack
explained 在 Python API 参考中:
在 Pub/Sub 中,术语 ack 代表“确认”。
...
也可以nack消息,正好相反...
相同的文档包含Pulling a Subscription Synchronously
部分,其中解释了如何将nack
与modify_ack_deadline()
联系起来:
如果你想nack接收到的一些消息(...),你可以使用 modify_ack_deadline() 方法并设置它们
承认最后期限为零。这将导致它们被
此客户端和后端将尝试重新交付它们。