服务器性能监视器_性能计数器感叹号

服务器性能监视器_性能计数器感叹号文章来源:http://blog.csdn.net/lhfzd2004/article/details/1722379上一篇文章《服务器性能监控之WMI》介绍了通过远程com获取服务器性能(当然也可用于本地),那么这篇主要说说windows系统自带的性能监视功能—–>performancecouonter.打开管理工具–>性能,我们可以立即看到服务器的CPU,进程运行时间,磁盘容量

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

文章来源:http://blog.csdn.net/lhfzd2004/article/details/1722379

上一篇文章《服务器性能监控之WMI》介绍了通过远程com获取服务器性能(当然也可用于本地),那么这篇主要说说windows系统自带的性能监视功能—–>performancecouonter.

打开管理工具–>性能,我们可以立即看到服务器的CPU,进程运行时间,磁盘容量等性能参数走势图。然而不仅仅是这几项,我们可以通过添加技术器来查看其他的性能指标:

服务器性能监视器_性能计数器感叹号

如果你说,这么看太麻烦了,OK,我们通过C#将这些值取出来,用于实现自身的性能监视:

1.添加引用:

 

服务器性能监视器_性能计数器感叹号
using
 System.Diagnostics;

 

2.创建并实例化PerformanceCounter

 

服务器性能监视器_性能计数器感叹号
public
 
static
 System.Diagnostics.PerformanceCounter pc
=
 
new
 System.Diagnostics.PerformanceCounter();
服务器性能监视器_性能计数器感叹号

public
 
static
 System.Diagnostics.PerformanceCounter pcm
=
 
new
 System.Diagnostics.PerformanceCounter();
服务器性能监视器_性能计数器感叹号

public
 
static
 System.Diagnostics.PerformanceCounter pcb
=
 
new
 System.Diagnostics.PerformanceCounter();
服务器性能监视器_性能计数器感叹号

public
 
static
 System.Diagnostics.PerformanceCounter pcc
=
 
new
 System.Diagnostics.PerformanceCounter();
服务器性能监视器_性能计数器感叹号

//
我们用四个对象做不同的操作,注意:是static的,不然每次取出的数据都是初始值,如cpu利用率就是0

 

3.构造函数

 

服务器性能监视器_性能计数器感叹号
static
 CapabilityScout()
服务器性能监视器_性能计数器感叹号服务器性能监视器_性能计数器感叹号

…
{

服务器性能监视器_性能计数器感叹号pc.CategoryName 
= “Processor“;
服务器性能监视器_性能计数器感叹号pc.CounterName 
= “% Processor Time“;
服务器性能监视器_性能计数器感叹号pc.InstanceName 
= “_Total“;
服务器性能监视器_性能计数器感叹号pc.MachineName 
= “.“;
服务器性能监视器_性能计数器感叹号pcm.CategoryName 
= “Memory“;
服务器性能监视器_性能计数器感叹号pcm.CounterName 
= “% Committed Bytes In Use“;
服务器性能监视器_性能计数器感叹号pcm.MachineName 
= “.“;
服务器性能监视器_性能计数器感叹号pcb.CategoryName 
= “Windows Media Unicast Service“;
服务器性能监视器_性能计数器感叹号pcb.CounterName 
= “Allocated Bandwidth“;
服务器性能监视器_性能计数器感叹号pcb.MachineName 
= “.“;
服务器性能监视器_性能计数器感叹号pcc.CategoryName 
= “Windows Media Unicast Service“;
服务器性能监视器_性能计数器感叹号pcc.CounterName 
= “Connected Clients“;
服务器性能监视器_性能计数器感叹号pcc.MachineName 
= “.“;
服务器性能监视器_性能计数器感叹号}

 

4.获取计数器值

 

服务器性能监视器_性能计数器感叹号

服务器性能监视器_性能计数器感叹号服务器性能监视器_性能计数器感叹号        

获取CPU利用率
#region 获取CPU利用率
服务器性能监视器_性能计数器感叹号        
public static string getCpuUsage()
服务器性能监视器_性能计数器感叹号服务器性能监视器_性能计数器感叹号        
…{

服务器性能监视器_性能计数器感叹号            
string used = pc.NextValue().ToString();
服务器性能监视器_性能计数器感叹号            
return used;
服务器性能监视器_性能计数器感叹号        }

服务器性能监视器_性能计数器感叹号        
#endregion


服务器性能监视器_性能计数器感叹号服务器性能监视器_性能计数器感叹号        

获取内存使用率
#region 获取内存使用率
服务器性能监视器_性能计数器感叹号        
public static string getMemory()
服务器性能监视器_性能计数器感叹号服务器性能监视器_性能计数器感叹号        
…{

服务器性能监视器_性能计数器感叹号            
float used = pcm.NextValue();
服务器性能监视器_性能计数器感叹号            
return used.ToString();
服务器性能监视器_性能计数器感叹号        }

服务器性能监视器_性能计数器感叹号        
#endregion


服务器性能监视器_性能计数器感叹号服务器性能监视器_性能计数器感叹号        

获取WMS连接数
#region 获取WMS连接数
服务器性能监视器_性能计数器感叹号        
public static string getConnectedCount()
服务器性能监视器_性能计数器感叹号服务器性能监视器_性能计数器感叹号        
…{

服务器性能监视器_性能计数器感叹号            
string count = pcc.NextValue().ToString();
服务器性能监视器_性能计数器感叹号            
return count;
服务器性能监视器_性能计数器感叹号        }

服务器性能监视器_性能计数器感叹号        
#endregion


服务器性能监视器_性能计数器感叹号服务器性能监视器_性能计数器感叹号        

获取网络流量
#region 获取网络流量
服务器性能监视器_性能计数器感叹号        
public static string getServerBandWidth()
服务器性能监视器_性能计数器感叹号服务器性能监视器_性能计数器感叹号        
…{

服务器性能监视器_性能计数器感叹号            
string bandwidth = pcb.NextValue().ToString();
服务器性能监视器_性能计数器感叹号            
return bandwidth;
服务器性能监视器_性能计数器感叹号        }

服务器性能监视器_性能计数器感叹号        
#endregion

 

当然,这里只是其中及少的部分,不过通过使用同样的方式,我们可以获取更多的性能以及进程运行的情况,但是要说明的一点是,所获取的数据必定是windows服务所提供的,当然我们也可以自己写一些windows服务,添加到系统performancecounter中来,对.net来说也是非常方便的。

怎么样,和WMI比起来,是不是又方便了一些呢,呵呵~~

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/184706.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MySQL的字段类型_mysql数据库字段类型

    MySQL的字段类型_mysql数据库字段类型前言:要了解一个数据库,我们必须了解其支持的数据类型。MySQL支持大量的字段类型,其中常用的也有很多。前面文章我们也讲过int及varchar类型的用法,但一直没有全面讲过字段类型,本篇文章我们将把字段类型一网打尽,讲一讲常用字段类型的用法。常用的字段类型大致可以分为数值类型、字符串类型、日期时间类型三大类,下面我们按照分类依次来介绍下。1.数值类型数值类型大类又可以分为整型、浮点型、…

    2022年9月6日
  • Python元组

    在python中有六种内建的序列:列表、元祖、字符串、Unicode字符串、buffer对象hexrange对象。通用序列操作:1.索引(indexing)2.分片(slicing)3.

    2021年12月18日
  • String转为long 类型报错原因:要转为long必须是int、double、float型[通俗易懂]

    遇到该问题的解决办法一:StringstrTime="12.5416132";doubledblTime=Double.parseDouble(strTime); longlngTime=newDouble(dblTime).longValue();log.info("lngTime:"+lngTime);具体报错原因请看下面的例子和解释:上例子:stringa=…

    2022年4月12日
  • ireport使用教程视频_proe拖动图形

    ireport使用教程视频_proe拖动图形iReport使用教程【原创】iReport与JasperReport简介1.1  简介JasperReport是报表的引擎部分,界面设计是用iReport。为什么选择这两个软件呢?因为这两个软件都是开源的,即免费的(虽然某些文档收费,但是磨灭不了我们使用它的理由)。JasperReport是一个报表制作程序,用户按照它制定的规则编写一个XML文件,然后得到用户需要输出的

    2022年9月11日
  • Linux移植一_linux从零开始移植

    Linux移植一_linux从零开始移植Linux移植一本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.现在手上有两个开发板,一个是tiny6410,一个是OK6410-A.tiny6410上跑的是linux2.6.38,支持alsa,uboot支持yaffs2系统以及从sd卡启动linux,并且移植了qte的库.而ok6410上跑的是linux2.6.36,没有

    2022年9月15日
  • .NET/C#发起GET和POST请求的几种方法

    .NET/C#发起GET和POST请求的几种方法

    2021年6月13日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号