Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用Microsoft.Azure.EventHubs创建多个EventHubClient对象,这些对象重用相同的底层TCP连接_C#_Azure_Azure Eventhub - Fatal编程技术网

C# 使用Microsoft.Azure.EventHubs创建多个EventHubClient对象,这些对象重用相同的底层TCP连接

C# 使用Microsoft.Azure.EventHubs创建多个EventHubClient对象,这些对象重用相同的底层TCP连接,c#,azure,azure-eventhub,C#,Azure,Azure Eventhub,我们目前已经使用WindowsAzure.ServiceBus库实现了这一点。这非常简单,因为MessagingFactory类完成了这项工作。我们现在正在迁移到Microsoft.Azure.EventHubs库。我想知道我们如何通过Microsoft.Azure.EventHubs实现同样的目标。我们需要它,因为我们的应用程序可以在运行时创建100+EventHubClient对象 实际场景了解问题的更多上下文: 我们希望使用Microsoft.Azure.eventhubs库使用event

我们目前已经使用
WindowsAzure.ServiceBus
库实现了这一点。这非常简单,因为
MessagingFactory
类完成了这项工作。我们现在正在迁移到
Microsoft.Azure.EventHubs
库。我想知道我们如何通过
Microsoft.Azure.EventHubs
实现同样的目标。我们需要它,因为我们的应用程序可以在运行时创建100+
EventHubClient
对象

实际场景了解问题的更多上下文:
我们希望使用Microsoft.Azure.eventhubs库使用eventhubs

我们的应用程序可以在运行时创建许多eventhub客户端。我们不希望每次创建新的eventhub客户端时都创建新的TCP连接(我们的主机VM对可以使用的TCP连接数量有限制)。我们当前的实现创建了一个包含200个Microsoft.ServiceBus.MessagingFactory对象的池,并以循环方式从MessagingFactory池创建新的eventhub客户端。这保证了打开的TCP连接不会超过200个

现在,我们正在从Microsoft.ServiceBus.Messaging迁移到Microsoft.Azure.EventHubs库,因为我们觉得我们可能会得到更多支持,因为Microsoft专门为EventHubs创建了此Microsoft.Azure.EventHubs


问题是Microsoft.Azure.EventHubs没有MessagingFactory类。在创建EventHub客户端时,也没有任何方法可以提供TCP连接对象。这使我们的工作陷入停顿,因为我们不确定如何从这里开始。任何潜在客户都会受到欢迎。

有时候,对一个问题的回答只是简单的“不”。这一次也是如此。它(重新使用TCP连接)目前不受支持。事实上,在这方面没有任何迹象


这就是说,由于Azure事件中心的.NET标准客户端库,您可以将其提交给他们,并引起他们的注意(如果他们的路线图上还没有这样做的话)。

将此标记为目前公认的答案。我们将为每个eventhub创建一个EventHubClient对象池,并在需要时重用相同的客户端对象。