繁体   English   中英

Azure Service Bus SDK / NuGet中的serverWaitTime和operationTimeout之间的差异

[英]Difference between serverWaitTime and operationTimeout in Azure Service Bus SDK/NuGet

我试图了解之间的区别:

  1. serverWaitTime(在ISessionClient.AcceptMessageSessionAsync(String,TimeSpan)中)( https://docs.microsoft.com/zh-cn/dotnet/api/microsoft.azure.servicebus.isessionclient.acceptmessagesessionasync?view=azure-dotnet#Microsoft_Azure_ServiceBus_ISessionClient_AcceptMessageSessionAsync_Time_System_String
  2. operationTimeout(在IMessageReceiver.ReceiveAsync(TimeSpan)中)( https://docs.microsoft.com/zh-cn/dotnet/api/microsoft.azure.servicebus.core.imessagereceiver.receiveasync?view=azure-dotnet#Microsoft_Azure_ServiceBus_Core_IMessageReceiver_ReceiveAsync_System_TimeS Azure Service Bus SDK。

该文档提供了以下两种内容:

  1. serverWaitTime:调用应等待获取下一个会话的时间。
  2. operationTimeout:客户端在超时之前等待接收消息的时间。

在我的实验代码中,ISessionClient.AcceptMessageSessionAsync(session,serverWaitTime)似乎立即返回(即使正在创建大量会话时),其中IMessageReceiver.ReceiveAsync肯定会等待提供的operationTimeout,然后再超时(如果没有该会话的消息)可用。

因此,我想知道serverWaitTime是否意味着我不理解的其他内容。

  1. 两者都只与客户端超时有关吗?
  2. 如果是这样,那为什么还要调用一个serverWaitTime vs operationTimeout?

serverWaitTimeoperationTimeout参数代表相同的概念-等待客户端放弃之前的时间。

由于他们被不同地称呼的原因,这是团队在问题tarcker中提出的一个问题

会话客户端具有操作超时,我们可以为所有会话定义超时期限。

通过AcceptMessageSessionAsync的每个会话都可以通过提供服务器等待时间来覆盖该值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM