Ron*_*Ron 7 servicebus azure azure-queues azureservicebus azure-servicebus-queues
我想弄清楚如何监听队列中的事件(尤其是入队事件)。
假设我有一个控制台应用程序和一个服务总线队列/主题,我如何连接到队列并等待新消息?
我试图在没有While(true)
持续轮询的情况下实现这一点,我试图以一种非常听话的方式来做更多的事情,比如保持连接到队列的套接字。
我不想使用轮询的原因是我知道它会用请求淹没服务器,我需要一个可以在大负载下工作的解决方案。
谢谢你。
为了简单起见,我给出了非常基本的示例,但我的实际情况要复杂一些:
我有使用服务总线队列将需要处理的消息发送到工作角色的 Web API。
我需要以某种方式知道 Worker 何时处理了消息。我希望 Worker 向队列发送一条消息,提醒 Web API 已处理该消息,但现在我需要让 Web API“坐下”并等待 Worker 的回复,这引出了我的问题:
如何在不进行轮询的情况下不断地收听队列(因为有很多实例会进行池化,并且会创建很多可能最好避免的请求。
我最终使用了QueueClient.ReceiveAsync
In order to wait for message with a Timespan 参数。
BrokeredMessage msg = subClient.ReceiveAsync(TimeSpan.FromMinutes(3));
Run Code Online (Sandbox Code Playgroud)
这是一篇很好的文章,解释了 Azure 服务总线链接和服务总线最佳实践的大部分内容。
归档时间: |
|
查看次数: |
6364 次 |
最近记录: |