【发布时间】:2020-08-06 21:26:28
【问题描述】:
我正在开发一个 Azure IoT Web 应用程序,它使用来自 Azure 事件中心的事件。我定期在测试环境中将 Web 应用程序发布到 Azure,然后我也在自己的机器上以调试模式运行它,当这种情况发生时,基本上有两个 Web 应用程序同时运行,它们是事件中心的消费者。
我想知道一个消费者是否可能会“吞下”通知,以便其他消费者不会收到它。那会很糟糕,我必须为我的调试本地机器设置一个单独的事件中心。
事件中心的两个消费者都会收到所有通知吗?
我没有以任何特殊方式设置事件中心或使用者代码。消费者代码使用Azure.Messaging.EventHubs.EventProcessorClient,其ProcessEventAsync() 如下所示:
async Task ProcessEventHandler(ProcessEventArgs eventArgs)
{
string deviceId = eventArgs.Data.Properties["deviceId"].ToString();
string message = Encoding.UTF8.GetString(eventArgs.Data.Body.Span);
await ProxyMessageToController(deviceId, message);
await eventArgs.UpdateCheckpointAsync(eventArgs.CancellationToken);
}
【问题讨论】:
标签: azure azure-eventhub asp.net-core-3.0 .net-core-3.0