PerformanceCounter 如何计算 IIS 网站的当前连接数?

How does PerformanceCounter count current connections to IIS website?

我们可以在windows服务器中使用C#代码或性能监视器来查看当前与IIS网站的连接。

  PerformanceCounter performanceCounter = new System.Diagnostics.PerformanceCounter();
  performanceCounter.CategoryName = "Web Service";
  performanceCounter.CounterName = "Current Connections";
  performanceCounter.InstanceName = "SMS_Collection_CFC";
  string data = string.Format("{0}\t{1} = {2}", performanceCounter.CategoryName,
                performanceCounter.CounterName, performanceCounter.NextValue());

这可以return连接数。

这是在计算引擎盖下的 TCP 连接数吗?我们知道有很多TCP连接状态,比如ESTABLISHED,TIME_WAIT,性能计数器在统计哪个状态?

由于没有人回答这个 post,我 post 我的发现。

在服务器中,我调用了原来post中的相关代码,结果returns574。

string data = string.Format("{0}\t{1} = {2}", performanceCounter.CategoryName,
            performanceCounter.CounterName, performanceCounter.NextValue());

然后,我运行netstat command.The网站占用9010端口

netstat -an | find /i "9010"

它返回 550 个已建立的 TCP 连接。所以我猜它正在监视已建立的 TCP 连接。