为啥 PubSub 订阅在保留期到期后向死信主题发布消息

     2023-02-16     47

关键词:

【中文标题】为啥 PubSub 订阅在保留期到期后向死信主题发布消息【英文标题】:Why PubSub subscription publish a message to dead letter topic after retention period expires为什么 PubSub 订阅在保留期到期后向死信主题发布消息 【发布时间】:2020-12-14 09:10:09 【问题描述】:

我需要在 PubSub 中跟踪未传递的消息。但是,当 PubSub Pull 订阅的订阅者在保留期后不可用时,订阅中的消息将永远丢失。它没有被为订阅创建的死信主题捕获。

如果重试次数超过并且订阅者没有收到确认,PubSub 似乎只会向死信主题发送消息。

有没有办法在消息永远丢失之前将消息推送到死信主题?

【问题讨论】:

Arvin,您是否只需要能够将消息存储超过保留期,因为您需要更多时间来处理消息,还是您实际上需要将旧消息放在单独的主题中用于带外处理? 【参考方案1】:

由于保留期到期,没有办法在消息被删除之前将消息发送到死信主题,不。死信主题的目标是捕获导致订阅者出现问题并可能阻止其他消息处理的消息,例如,如果订阅者由于意外消息而崩溃。检测此状态的方式是通过重试计数。

【讨论】:

那么死信主题就无法检索到未送达的消息? “检索未送达的邮件”是什么意思?死信主题不检索消息; Pub/Sub 服务向主题发布超过重试次数的消息,然后可以通过在死信主题上创建订阅来访问这些消息。 好的,所以我想说的是,在保留期到期之前,我想要一些机制来在这些未传递的消息丢失之前获取它们。有办法吗? 没有,没有。在 Pub/Sub 中获取消息的唯一方法是通过订阅者。 re: lost forever 如果您使用自己的自定义死信主题/队列,让我提醒您,发送到没有订阅的主题的消息基本上会被丢弃,因此拥有订阅到位。所以也许如果你订阅了你的死信队列,那么它们就不会消失在你身上。

Google Pubsub - 接收推送订阅的传递尝试

】GooglePubsub-接收推送订阅的传递尝试【英文标题】:GooglePubsub-Receivedeliveryattemptforpushsubscription【发布时间】:2021-06-0120:57:17【问题描述】:我有一个由Pubsub推送订阅触发的Google云功能。我想知道给定消息的当前传递尝试。在请... 查看详情

Google pubsub 死字在 golang 中不起作用

】Googlepubsub死字在golang中不起作用【英文标题】:Googlepubsubdeadletteringnotworksingolang【发布时间】:2020-08-2410:42:21【问题描述】:我尝试使用googlepubsub死字。我使用控制台云为1个订阅启用死信。我已经将死信主题和maxAttemptDelivery属... 查看详情

尝试在 Google PubSub python 中创建主题订阅时出错

】尝试在GooglePubSubpython中创建主题订阅时出错【英文标题】:ErrorintryingtocreateatopicsubscriptioninGooglePubSubpython【发布时间】:2021-03-1701:40:59【问题描述】:我正在尝试在python中使用Google的pubsub_v1库创建对主题的订阅。我已经使用库... 查看详情

如何将死信消息路由回原始主题?

...:12【问题描述】:我有一个使用死信主题的GoogleCloudPub/Sub订阅。我最近发生了一次中断,导致许多消息无法处理,它们最终进入了死信主题。中断已解决,我想将死信订阅的内容轻松发送回原始订阅。它们都还在队列中(我没有... 查看详情

PubSub 死字

】PubSub死字【英文标题】:PubSubDeadLettering【发布时间】:2020-10-0116:13:38【问题描述】:我正在尝试将云功能pubsub订阅转发到此处所述的死信主题:https://cloud.google.com/pubsub/docs/dead-letter-topics#gcloud我试过了$gcloudpubsubsubscriptionsupdateg... 查看详情

如何使用 Java 将错误消息移动到 Azure 死信队列(主题 - 订阅)?

】如何使用Java将错误消息移动到Azure死信队列(主题-订阅)?【英文标题】:HowtomoveerrormessagetoAzuredeadletterqueue(Topics-Subscription)usingJava?【发布时间】:2021-04-1120:11:38【问题描述】:我需要将消息从Azure主题订阅发送到死信队列,... 查看详情

来自 PubSub 主题的 Google Cloud 函数触发器是订阅吗

】来自PubSub主题的GoogleCloud函数触发器是订阅吗【英文标题】:IsGoogleCloudFunctionTriggerfromPubSubTopicaSubscription【发布时间】:2018-12-1411:21:59【问题描述】:我在GCC中有两个具有类似设置的环境。由PubSub主题触发的云函数。在这两个... 查看详情

使用 terraform 脚本的 pubsub 主题和订阅之间的依赖关系

】使用terraform脚本的pubsub主题和订阅之间的依赖关系【英文标题】:Dependencybetweenpubsubtopicandsubscriptionusingterraformscript【发布时间】:2021-09-2814:17:37【问题描述】:我正在使用一个terraform脚本来创建pub子主题和订阅。如果订阅需要... 查看详情

GCP - 如何添加关于发送到 pubsub 死信队列的消息数量的警报?

】GCP-如何添加关于发送到pubsub死信队列的消息数量的警报?【英文标题】:GCP-howtoaddalertonnumberofmessagessenttoapubsubdeadletterqueue?【发布时间】:2020-10-2204:03:10【问题描述】:我的应用程序处理来自pubsub主题的消息,如果失败,消息... 查看详情

为啥使用 PUBSUB 订阅时无法 PING?

】为啥使用PUBSUB订阅时无法PING?【英文标题】:WhycanInotPINGwhenSubscribedusingPUBSUB?为什么使用PUBSUB订阅时无法PING?【发布时间】:2014-07-1613:48:22【问题描述】:我在Azure上使用PUBSUB时遇到问题。Azure防火墙将关闭空闲时间不限的连... 查看详情

gcp 云函数 pub/sub 主题死信

...用terraform在gcp上实现以下目标。云函数侦听添加到发布/订阅主题的消息添加消息后,将触发云功能如果处理消息时出现错误,则将消息放入相应的死信队列。我不确定如何为还包含死信策略的云功能创建订阅。目前我正在为云... 查看详情

Pubsub 推送拉取订阅

】Pubsub推送拉取订阅【英文标题】:Pubsubpushtopullsubscriptions【发布时间】:2021-12-0518:49:11【问题描述】:我正在从推送订阅转向拉取订阅。鉴于我有几个正在运行的服务实例,在部署推出期间,推送和拉取都将发挥作用,直到所... 查看详情

如何将 GCP Pubsub 订阅的消息转发到另一个主题?

】如何将GCPPubsub订阅的消息转发到另一个主题?【英文标题】:HowcanIforwardaGCPPubsubsubscription\'smessagestoanothertopic?【发布时间】:2017-04-0111:35:34【问题描述】:我希望能够将GoogleCloudPlatform(GCP)Pubsub订阅的消息转发到另一个GCP主题,... 查看详情

[已解决]Pubsub 推送订阅不确认消息

】[已解决]Pubsub推送订阅不确认消息【英文标题】:Pubsubpushsubscriptionnotacknowledgingmessages【发布时间】:2021-03-0502:55:27【问题描述】:这是我的设置。订阅A是一种推送订阅,可将消息发布到云运行部署。该部署公开了一个HTTP端点... 查看详情

Firebase Emulator Cloud Functions + PubSub 订阅生产主题

】FirebaseEmulatorCloudFunctions+PubSub订阅生产主题【英文标题】:FirebaseEmulatorCloudFunctions+PubSubsubscribetoproductiontopics【发布时间】:2021-06-2121:17:54【问题描述】:有一项服务正在向我的Pub/Sub发布消息。通过CLI,我知道它正在正确接收消... 查看详情

GCP PubSub 主题推送问题

】GCPPubSub主题推送问题【英文标题】:GCPPubSubtopicpushissue【发布时间】:2019-05-1007:52:38【问题描述】:我在gke(gcp)上部署了一个nodejsdocker映像应用程序。这个应用程序只是一个等待通知的消息订阅者。我创建了一个主题(pubsub)... 查看详情

AWS - 在 SNS 订阅或 Lambda 函数上设置死信队列有啥区别?

】AWS-在SNS订阅或Lambda函数上设置死信队列有啥区别?【英文标题】:AWS-WhatisthedifferencebetweensettingaDeadLetterQueueonanSNSSubscriptionoronaLambdafunction?AWS-在SNS订阅或Lambda函数上设置死信队列有什么区别?【发布时间】:2020-12-1210:32:02【问... 查看详情

pubsub-js库实现“跨组件”数据传递(代码片段)

...则发布匹配公共订阅和个性化订阅规则类似应用一、参考pubsub-jsnpm地址应用场景描述在React和Vue开发中,如果遇到同级组件或者跨多级组件的数据传递,可以使用pubsub-js库实现“订阅和发布”的能力,实现“数据跨组... 查看详情