使用事件中心的工作者角色给出“没有找到虚拟主机的连接处理程序”

时间:2016-08-29 13:46:35

标签: azure-eventhub

我有一个worker角色,它使用EventProcessorHost从EventHub中提取数据。我经常收到以下类型的错误消息:

Microsoft.ServiceBus.Messaging.MessagingCommunicationException:  没有找到虚拟主机'myservicebusnamespace.servicebus.windows.net:42777'的连接处理程序。远程容器ID是'f37c72ee313c4d658588ad9855773e51'。 TrackingId:1d200122575745cc89bb714ffd533b6d_B5_B5,SystemTracker:SharedConnectionListener,时间戳:8/29/2016 6:13:45 AM     在Microsoft.ServiceBus.Common.ExceptionDispatcher.Throw(异常异常)     在Microsoft.ServiceBus.Common.Parallel.TaskHelpers.EndAsyncResult(IAsyncResult asyncResult)     在Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)

我似乎无法找到捕获此异常的方法。我似乎可以忽略错误,因为一切都按预期工作(我之前曾在此处提到由于此错误而丢弃消息,但我发现发送消息的软件中的错误导致此问题),但我想知道导致这些错误的原因,因为它们偶尔会阻塞我的日志。

有人能说清楚原因吗?

1 个答案:

答案 0 :(得分:3)

Event Hub分区分布在多个服务器上。它们有时会因负载平衡,升级和其他原因而移动。发生这种情况时,客户端连接会因此错误而丢失。连接将很快重新建立,因此您不应该看到任何消息处理问题。忽略此通信错误是安全的。