1. 程式人生 > >c# 獲取端口的連接數,網站的連接數

c# 獲取端口的連接數,網站的連接數

-- keyword min mark app 箭頭 stat markdown cap

原文:c# 獲取端口的連接數,網站的連接數

版權聲明:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/wyljz/article/details/79207507

端口連接數:

  public static int PortTcpConnection(int port)
        {
            IPGlobalProperties properti = IPGlobalProperties.GetIPGlobalProperties();
            var
tcps = properti.GetActiveTcpConnections().ToList(); var list = tcps.Where(f => f.LocalEndPoint.Port == port); var iplist = list.GroupBy(f => f.RemoteEndPoint.Address); return iplist.Count(); }

網站連接數:

 public List<WebSite> ListSite()
        {
            List<WebSite> list = new List<WebSite>();
using (ServerManager sm = new ServerManager()) { foreach (var s in sm.Sites) { WebSite site = new WebSite(); site.ID = s.Id; site.SiteName = s.Name; site.ApplicationPoolName
= s.Applications["/"].ApplicationPoolName; site.PhysicalPath = s.Applications["/"].VirtualDirectories["/"].PhysicalPath; site.State = s.State.ToString(); //System.Management.ManagementObject o = new ManagementObject("Win32_PerfFormattedData_W3SVC_WebService.Name=‘" + s.Name + "‘"); //site.CurrentConnections = int.Parse(o.Properties["CurrentConnections"].Value.ToString());這個太慢 int tcps = 0; foreach (var tmp in s.Bindings) { WebSite.Bind bind = new WebSite.Bind(); bind.IP = tmp.EndPoint.Address.ToString(); bind.Port = tmp.EndPoint.Port; bind.Host = tmp.Host; tcps += Util.SystemInfo.PortTcpConnection(bind.Port); site.BindList.Add(bind); } site.CurrentConnections = tcps;//當前連接數 list.Add(site); } } return list; }

c# 獲取端口的連接數,網站的連接數