你的位置:首页 > 软件开发 > ASP.net > asp.net mvc4 简单的服务器监控开发之C#获取服务器CPU、RAM、TCP等系统信息(上)

asp.net mvc4 简单的服务器监控开发之C#获取服务器CPU、RAM、TCP等系统信息(上)

发布时间:2016-10-14 20:00:14
一、背景   前段时间服务器出了点问题,加上学业愈来愈紧张,写博文分享的时间越来越少。虽然不是第一次在博客园上写经验,但是近期分享的博文得到了不少的朋友支持和指正,在这里内心非常感激和开心。希望以后能认真用好时间,把一些有用的经验分享给需要的人,当然本科阶段的我还有许多不懂的 ...

一、背景

   前段时间服务器出了点问题,加上学业愈来愈紧张,写博文分享的时间越来越少。虽然不是第一次在博客园上写经验,但是近期分享的博文得到了不少的朋友支持和指正,在这里内心非常感激和开心。希望以后能认真用好时间,把一些有用的经验分享给需要的人,当然本科阶段的我还有许多不懂的,如果在文章中有错误,希望大家多多指正,必虚心受教。

  今天要分享的是使用c#获取服务器CPU、RAM、TCP、磁盘使用情况。前段时间,做了一个几十人的并发测试,服务器宕机了,后来上控制管理台检查测试时间段里服务器各项数据,可惜没有这块数据的提供。为此,我想在web程序中,加入一个小监控的功能,以方便自己随时调用和查看我想要的信息。为了实现这个功能,首先得获取服务器上得一些数据:CPU、RAM、TCP、磁盘使用数据。

 

二、解决思路或过程

首先获取CPU的使用情况:

  1. get='_blank'>mvc目录下创建类SystemMonitor.cs,引入命名空间:using System.Runtime.InteropServices;//提供各种各样支持 COM 互操作 及平台调用服务的成员。using System.Diagnostics;//System.Diagnostics 命名空间中,该命名空间提供了用于与事件日志、性能计数器和系统进程进行交互的类。您可以在生产应用程序中保持对此监控代码的启用,并在发生问题时查看相关信息。

添加如下代码:

 /// <summary>  /// 获取CPU信息  /// </summary>  public class CPUInfo  {        /// <summary>    /// 输出CPU信息    /// </summary>    /// <returns></returns>    public string GetCPUInfo()    {            StringBuilder sb = new StringBuilder();      int cpuPercent = Convert.ToInt32(GetCPUCounter());            sb.Append(cpuPercent);            return sb.ToString();    }    /// <summary>    /// 获取CPU信息    /// </summary>    /// <returns></returns>    private static object GetCPUCounter()    {      PerformanceCounter pc = new PerformanceCounter();      pc.CategoryName = "Processor";      pc.CounterName = "% Processor Time";      pc.InstanceName = "_Total";            dynamic Value_1 = pc.NextValue();      System.Threading.Thread.Sleep(1000);            dynamic Value_2 = pc.NextValue();      return Value_2;    }  }

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:asp.net mvc4 简单的服务器监控开发之C#获取服务器CPU、RAM、TCP等系统信息(上)

关键词:ASP.NET

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。