当前位置: 首页 > 知识库问答 >
问题:

Azure服务总线:删除会话消息

那弘
2023-03-14

我正在使用带有.NET核心的Azure服务总线

在我们的应用程序中,我们正在向服务总线发送会话消息。每当我们收到带有session-Id的取消请求时,我们需要删除/删除/完成带有该特定sessionId的消息,而不需要进行任何进一步的处理

但我得到了错误-请求的会话'session-name'不能被接受。它可能被另一个接收器锁定。

共有1个答案

欧阳俊捷
2023-03-14

有没有其他可能的方法可以用特定的sessionid从服务总线队列中删除消息?

可以使用Serverless360中的搜索功能删除具有SessionId的消息,在该功能中,您可以将查询指定为SessionId=“1”,并检索消息并将其删除。但是,很明显,当会话消息被锁定时,您无法检索它,因此您的第二个测试用例无论如何也是不可能的,除非您能够设法在业务流程中使用一些操作(如renew lock)并延迟处理消息。

 类似资料:
  • 我需要一起处理相同的消息集,为此,我尝试了Azure服务总线会话启用功能。为了测试这一点,我创建了一个非常简单的应用程序,一个消息在队列中成功提交,然而,当试图在“ReceiveSessionMessage”函数中接收消息时,消息会话不会返回,程序会在这一行之后退出。 我无法找出确切的根本原因,任何帮助都将不胜感激。谢谢 等待会话客户端。AcceptMessageSessionAsync();]

  • 我在Azure中托管了两个云服务辅助角色,一个使用NServiceBus(Azure服务总线传输)消耗消息,另一个生成消息。 昨天,我部署了一个新版本的生产者工作者角色,而队列中仍然有大量消息,因为我们正在处理早上遗留下来的大量消息。当生产者启动时,它似乎已经清空(或者可能重新创建)队列,许多重要的生产消息丢失。这似乎很奇怪,但日志显示,大约在生产者角色启动时,消费者没有处理进一步的消息,我们知道

  • 我正在尝试在Azure中构建一个简单的WebAPI REST服务,后端有一个服务总线队列工作器。我可以从Web API向工作人员发送一条消息。然而,我试图发送更多的信息,只是为了看看一切是如何运作的。因此,我创建了一个简单的控制器,如下所示: 当我呼叫控制器时,我只收到工作人员接收到的大约1/2的消息。其余的似乎都被放弃了。

  • 是否需要删除/清除Azure门户中Azure服务总线队列中的活动/死信消息?目前,我们已经向队列发送了几条消息,而活动消息和一些死信消息都无缘无故地保留在那里,并且我们的服务总线用户没有以某种方式触发,因此我们希望删除这些消息,以使队列再次干净。为了等到服务总线在过期后丢弃这些消息,我们可以自己手动删除它们吗?

  • 我们使用服务总线主题作为pub/sub系统的引擎。我们的逻辑涉及我们的NodeJS服务用多个订阅连接到一个主题。对于每个订阅,我们删除$default(TrueFilter),并在消息头的Label属性上创建一个CorrelationFilter,并且不在订阅中应用AutoDeleteOnIdle设置,因为我们希望确保订阅服务器功能在服务启动之前一直运行。 这个问题可以归结为这样:某件事能导致规则

  • 我在Azure Service Bus中使用代理消息传递(主题/订阅),我很好奇如何(或者是否)使用SSL保护通信。