`

Sigar使用之:取得内存相关数据

 
阅读更多

在做系统监控的时候,为了分析系统的性能,我们不仅仅要取得CPU的使用数据,还要知道内存的占用情况。使用sigar也可以轻松的完成跨平台的内存监控数据。

内存的主要指标有:物理内存的大小、使用数、剩余数;交换内存的大小、使用数、剩余数;RAM的大小等等。

下面通过例子说明:

1.package lab.sigar;   
2.  
3.import org.hyperic.sigar.Mem;   
4.import org.hyperic.sigar.Sigar;   
5.import org.hyperic.sigar.SigarException;   
6.import org.hyperic.sigar.Swap;   
7.  
8.import com.thoughtworks.xstream.XStream;   
9.  
10./**  
11. * 内存数据  
12. *   
13. * 使用Sigar获得系统内存信息  
14. *   
15. */  
16.public class MemoryData {   
17.    private Mem mem;   
18.    private Swap swap;   
19.  
20.    public MemoryData() {   
21.    }   
22.  
23.    public void populate(Sigar sigar) throws SigarException {   
24.        mem = sigar.getMem();   
25.        swap = sigar.getSwap();   
26.    }   
27.  
28.    public static MemoryData gather(Sigar sigar) throws SigarException {   
29.        MemoryData data = new MemoryData();   
30.        data.populate(sigar);   
31.        return data;   
32.    }   
33.       
34.    public static void main(String[] args) throws Exception {   
35.        Sigar sigar = new Sigar();   
36.        MemoryData memData = MemoryData.gather(sigar);   
37.        XStream xstream = new XStream();   
38.        xstream.alias("MemData", MemoryData.class);   
39.        System.out.println(xstream.toXML(memData));   
40.    }   
41.  
42.}  

 

输出:

1.<MemData>  
2.  <mem>  
3.    <total>1073102848</total>  
4.    <ram>1024</ram>  
5.    <used>932274176</used>  
6.    <free>140828672</free>  
7.    <actualUsed>932274176</actualUsed>  
8.    <actualFree>140828672</actualFree>  
9.  </mem>  
10.  <swap>  
11.    <total>2580328448</total>  
12.    <used>870432768</used>  
13.    <free>1709895680</free>  
14.    <pageIn>137691</pageIn>  
15.    <pageOut>19392</pageOut>  
16.  </swap>  
17.</MemData>  

  

分享到:
评论

相关推荐

    SQL Sugar数据访问框架

    1. 易于使用:SQL Sugar被誉为众多.NET框架中最易用的数据库访问技术。它的API设计简洁明了,学习曲线平缓,开发者可以快速上手并进行数据库操作。 2. 高性能:通过优化的查询执行机制和高效的缓存策略,SQL Sugar...

    export.sugar百度大屏sugar模版下载.zip

    标签"export.sugar"、"百度大屏"和"sugar模版"进一步强调了文件的核心内容:与SUGAR相关的导出功能,以及与百度大屏的兼容性。百度大屏通常指的是百度开发的大数据分析展示平台,它可以将复杂数据以直观的视觉效果...

    sugar.jar jar包.rar

    使用Sugar框架进行数据操作非常直观。例如,插入一条新记录: ```java Context context = ...; // 应用上下文 DatabaseHelper dbHelper = new DatabaseHelper(context); SQLiteDatabase db = dbHelper....

    SugarCRM傻瓜教程

    通过阅读SugarCRM傻瓜教程,即便是没有相关背景知识的初学者也能够逐步掌握SugarCRM的使用,最终实现提高工作效率和管理水平的目标。同时,考虑到使用过程中可能遇到的问题,教程可能会提供一些专业的建议和解决方案...

    gulp-sugar-test:使用口香糖的例子

    在IT行业中,JavaScript是一种广泛使用的编程语言,尤其在前端开发领域。`gulp-sugar-test`是基于JavaScript的一个项目,它涉及到`gulp-sugar-simple`库的测试应用。`gulp`是一个自动化工具,常用于构建流程,如编译...

    开源客户关系管理系统SugarCRM的使用教程.docx

    **SugarCRM 开源客户关系管理系统使用教程** SugarCRM 是一款流行的开源客户关系管理系统,它提供了丰富的功能,帮助企业管理和优化与客户的关系。以下是一些关键点的详细解释: 1. **权限设置** - **角色控制**...

    sugarCrm 文档

    - **开发人员指南**:针对开发者提供的文档,介绍如何使用SugarCRM进行二次开发。 - **API文档**:详细介绍各个API接口的使用方法。 - **最佳实践**:分享成功案例和推荐的最佳实践。 #### 安装SugarCRM ##### ...

    react-native-sugar-style:带有主题支持的React Native Stylesheet替代品

    phone:适用于android / ios / web(expo / react-native)安装yarn add react-native-sugar-stylenpm i react-native-sugar-style用法步骤1: style.tsx定义主题的配置,有关更多详细示例,请参见此。 import Sugar ...

    Sugar (Android orm )

    通过使用ORM技术,开发者可以将Java对象直接映射到数据库表,极大地简化了数据持久化的复杂性。 在Android开发中,数据存储通常涉及SQLite数据库,而手动编写SQL语句和管理数据库会增加代码的复杂度和维护成本。...

    SugarCRM

    作为SugarCRM开源用户指南的贡献者之一,作者深入浅出地介绍了如何将SugarCRM引入到小型或中型企业的业务流程中。 ### 一、SugarCRM概述 SugarCRM是一个开源的客户关系管理系统,它为企业提供了一套全面的工具来...

    sugarcrm 英文开发指南

    SugarCRM开发者指南针对希望使用SugarCRM的定制工具和API扩展或自定义功能的开发者,适用于SugarUltimate、Enterprise、Corporate、Professional和Community版本。 三、SugarCRM模块框架与定制化 SugarCRM由多个...

    sugarCRM性能测试.zip

    在本压缩包“sugarCRM性能测试.zip”中,包含了一系列与使用LoadRunner进行性能测试相关的资源,这对于我们理解并优化SugarCRM的性能至关重要。 LoadRunner是HP(现为Micro Focus)开发的一款强大的负载和性能测试...

    Match 3 Sweet Sugar v1.4.zip

    游戏开发者通常会使用PNG、JPEG等图像格式,MP3或WAV等音频格式,这些资源会被加载到内存并在运行时使用。 2. 游戏逻辑:这部分可能包含游戏的主循环、关卡设计、分数计算、游戏规则判断等功能。这些逻辑通常由C++...

    SugarCrm6.3.1中文汉化包

    2. **备份数据**:在进行任何修改之前,先备份现有的SugarCRM系统数据,以防万一出现问题可以恢复。 3. **下载汉化包**:从可靠来源获取SugarCRM-LangPack-zh_cn-6.3.1.zip文件,这是实际的中文语言包。 4. **解压...

    sugar-spells:糖果网站

    糖魔法(Sugar Spells)是一个以糖果为主题的网站设计项目,它主要使用了CSS技术来构建一个充满甜美和奇幻风格的网页。在这个项目中,开发者通过CSS实现了丰富的视觉效果和交互体验,为用户创造了一个沉浸式的虚拟...

    Sugar QCT_SP

    "QCT"通常指的是Qualcomm Chipset Technology,暗示这个工具可能与高通芯片的Android设备有关。"SP"可能是Service Pack或Special Package的缩写,意味着这是一个专门的更新或服务包。 【描述】"Sugar QCT_SP"的描述...

    SugarCRM项目常见面试问题

    ### SugarCRM项目常见面试问题详解 #### 一、SugarCRM项目简介 SugarCRM是一个由美国SugarCRM公司开发的开源客户关系管理系统(Customer Relationship Management, CRM),它采用了B/S(Browser/Server)架构,...

Global site tag (gtag.js) - Google Analytics