Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.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# 如何测量WCF出站连接计数?_C#_Wcf_Web Services_Performancecounter - Fatal编程技术网

C# 如何测量WCF出站连接计数?

C# 如何测量WCF出站连接计数?,c#,wcf,web-services,performancecounter,C#,Wcf,Web Services,Performancecounter,我有一个wcf Web服务和5台远程连接到它的客户端机器 不幸的是,我在我的客户机上遇到了一些通信错误(这是一个三层应用程序) 我想测量每台客户机上的出站连接数量,并将其写入日志中,以检查通信错误是否与并发连接限制/数量有关 我怎样才能在代码中完成它 我知道我可以访问性能计数器值,但我无法确定需要测量哪个性能计数器 还有两件事: 每个客户端都安装在单独的计算机上 我在配置中设置maxconnections属性,如下所示- <system.net> <connectionMa

我有一个wcf Web服务和5台远程连接到它的客户端机器

不幸的是,我在我的客户机上遇到了一些通信错误(这是一个三层应用程序)

我想测量每台客户机上的出站连接数量,并将其写入日志中,以检查通信错误是否与并发连接限制/数量有关

我怎样才能在代码中完成它

我知道我可以访问性能计数器值,但我无法确定需要测量哪个性能计数器

还有两件事:

  • 每个客户端都安装在单独的计算机上

  • 我在配置中设置maxconnections属性,如下所示-

    <system.net>
      <connectionManagement>
        <add address="*" maxconnection="65535"/>
      </connectionManagement>
    </system.net>
    
    
    

  • 你可以用信号器来做这个。使用拦截/调度程序进行方法调用,并将某些客户端推送到连接状态:打开或关闭,然后实时计算连接数。

    这5个客户端是否在同一台计算机上?WCF具有来自同一台计算机的默认并发连接计数,其中2个客户端位于不同的计算机上。每台机器都安装了一个客户端,但应用程序中有许多线程进行并发调用。关于2个连接的限制,请参见编辑。因此,您想计算服务器端或客户端上每个客户端的连接数吗?是否可以在客户端上使用perfmon部署性能计数器,我认为有一些选项可以让您计算出打开的连接数。我还觉得您面临的连接错误可能是由于连接故障?它需要得到正确的处理,就像你面对一个错误,然后你需要中止。我不明白你的确切意思。。。你能详细说明一下吗?