有没有办法设置我发布的 Google Pubsub 消息(错误请求)的到期时间,以便它不会在失败时无限期重试?
我无法通过重试来配置它,因为我希望有效的错误消息无限期地重试
有没有办法设置我发布的 Google Pubsub 消息(错误请求)的到期时间,以便它不会在失败时无限期重试?
我无法通过重试来配置它,因为我希望有效的错误消息无限期地重试
只有全球级别的 7 天到期。但是,您可以将时间戳添加为属性并在管道开始时检查时间戳,然后在满足条件时丢弃。
也就是说,我们不建议您仅使用时间戳来确定是否丢弃消息,因为如果您有大量积压并且消费者无法赶上,即使它是有效的消息也有可能被丢弃。第一次被处理。
这是另一个想法。发布消息时,您会在 API 响应中获得消息 ID,以后可以使用这些 ID 来识别单个消息。在您的管道中,您可以增加每个消息 ID 的重试计数,以便了解特定消息的重试次数。然后您可以丢弃重试 N 次以上的消息。我认为这种策略更可靠。这些重试计数不是关键,因此您可以将它们存储在内存中。