我们目前使用WindowsAzure.ServiceBus
库实现了此功能。由于MessagingFactory
类可以完成这项任务,因此非常简单。我们现在正在迁移到Microsoft.Azure.EventHubs
个库。我想知道如何通过Microsoft.Azure.EventHubs
实现同样的目标。我们需要这个,因为我们的应用程序可以在运行时创建100多个EventHubClient
对象。
实际情景,了解问题的更多背景信息:
我们想使用Microsoft.Azure.EventHubs库来使用eventhub。
场景是,我们的应用程序可以在运行时创建很多eventhub客户端。我们不希望每次创建新的eventhub客户端时都创建新的TCP连接(我们的主机VM对我们可以使用的TCP连接数有限制)。我们当前的实现创建了一个包含200个Microsoft.ServiceBus.Messaging.MessagingFactory对象的池,并以循环方式从MessagingFactory池创建新的eventhub客户端。这保证了我们不会打开超过200个TCP连接。
现在,我们正在从Microsoft.ServiceBus.Messaging迁移到Microsoft.Azure.EventHubs库,因为我们觉得我们可以获得更多支持,因为Microsoft专门为eventhubs创建了这个Microsoft.Azure.EventHubs。
问题是Microsoft.Azure.EventHubs没有MessagingFactory类。在创建EventHub客户端时,我们也没有任何方式可以提供TCP连接对象。这使我们的工作陷入困境,因为我们不确定如何从这里开始。任何领导都表示赞赏。
答案 0 :(得分:2)
有时问题的答案只是一个简单的问题,而不是"。对于这个也是如此。它(重用TCP连接)目前不受支持。在the source repo中确实没有这方面的痕迹。
也就是说,自Azure事件中心的.NET标准客户端库以来,您可以open an issue there并引起他们的注意(如果它不是已经在他们的路线图上)。