有没有办法从 pubsub 消息存储中删除消息?

Is there a way to delete a message from pubsub message store?

我正在使用 GCP Pubsub 发送和接收 JSON 数据,Pubsub 具有保留消息的功能,可以保留 10 分钟到 7 天且不少于 10 分钟的消息(根据官方文档)。有什么方法可以从 Pubsub 中删除拉取的消息吗?如果不是,那么为什么我们说 Pubsub 是 "Queuing technique" 当我们心甘情愿地不能从违反基本队列 属性 的消息存储中删除消息时?

我正在使用 python Pubsub 客户端库来编写脚本。

消息由 Google 云 Pub/Sub 在两种情况下保留:

  1. 消息尚未确认订阅且保留期限尚未过去。
  2. retainAckedMessages 已启用且保留期限未过。

一旦您收到一条消息并在确认截止日期内调用了 ack,该消息将不再为该订阅重新发送(除非 Pub/Sub 有可能发生重复至少一次传递语义)。

如果需要,您还可以在订阅者部分内执行清除,这将确认当前在存储区内等待该特定订阅者的所有消息。

转到订阅 -> 特定订阅者 -> 清除消息