在做系统监控的时候,为了分析系统的性能,我们不仅仅要取得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>
分享到:
相关推荐
1. 易于使用:SQL Sugar被誉为众多.NET框架中最易用的数据库访问技术。它的API设计简洁明了,学习曲线平缓,开发者可以快速上手并进行数据库操作。 2. 高性能:通过优化的查询执行机制和高效的缓存策略,SQL Sugar...
标签"export.sugar"、"百度大屏"和"sugar模版"进一步强调了文件的核心内容:与SUGAR相关的导出功能,以及与百度大屏的兼容性。百度大屏通常指的是百度开发的大数据分析展示平台,它可以将复杂数据以直观的视觉效果...
使用Sugar框架进行数据操作非常直观。例如,插入一条新记录: ```java Context context = ...; // 应用上下文 DatabaseHelper dbHelper = new DatabaseHelper(context); SQLiteDatabase db = dbHelper....
通过阅读SugarCRM傻瓜教程,即便是没有相关背景知识的初学者也能够逐步掌握SugarCRM的使用,最终实现提高工作效率和管理水平的目标。同时,考虑到使用过程中可能遇到的问题,教程可能会提供一些专业的建议和解决方案...
在IT行业中,JavaScript是一种广泛使用的编程语言,尤其在前端开发领域。`gulp-sugar-test`是基于JavaScript的一个项目,它涉及到`gulp-sugar-simple`库的测试应用。`gulp`是一个自动化工具,常用于构建流程,如编译...
**SugarCRM 开源客户关系管理系统使用教程** SugarCRM 是一款流行的开源客户关系管理系统,它提供了丰富的功能,帮助企业管理和优化与客户的关系。以下是一些关键点的详细解释: 1. **权限设置** - **角色控制**...
- **开发人员指南**:针对开发者提供的文档,介绍如何使用SugarCRM进行二次开发。 - **API文档**:详细介绍各个API接口的使用方法。 - **最佳实践**:分享成功案例和推荐的最佳实践。 #### 安装SugarCRM ##### ...
phone:适用于android / ios / web(expo / react-native)安装yarn add react-native-sugar-stylenpm i react-native-sugar-style用法步骤1: style.tsx定义主题的配置,有关更多详细示例,请参见此。 import Sugar ...
通过使用ORM技术,开发者可以将Java对象直接映射到数据库表,极大地简化了数据持久化的复杂性。 在Android开发中,数据存储通常涉及SQLite数据库,而手动编写SQL语句和管理数据库会增加代码的复杂度和维护成本。...
作为SugarCRM开源用户指南的贡献者之一,作者深入浅出地介绍了如何将SugarCRM引入到小型或中型企业的业务流程中。 ### 一、SugarCRM概述 SugarCRM是一个开源的客户关系管理系统,它为企业提供了一套全面的工具来...
SugarCRM开发者指南针对希望使用SugarCRM的定制工具和API扩展或自定义功能的开发者,适用于SugarUltimate、Enterprise、Corporate、Professional和Community版本。 三、SugarCRM模块框架与定制化 SugarCRM由多个...
在本压缩包“sugarCRM性能测试.zip”中,包含了一系列与使用LoadRunner进行性能测试相关的资源,这对于我们理解并优化SugarCRM的性能至关重要。 LoadRunner是HP(现为Micro Focus)开发的一款强大的负载和性能测试...
游戏开发者通常会使用PNG、JPEG等图像格式,MP3或WAV等音频格式,这些资源会被加载到内存并在运行时使用。 2. 游戏逻辑:这部分可能包含游戏的主循环、关卡设计、分数计算、游戏规则判断等功能。这些逻辑通常由C++...
2. **备份数据**:在进行任何修改之前,先备份现有的SugarCRM系统数据,以防万一出现问题可以恢复。 3. **下载汉化包**:从可靠来源获取SugarCRM-LangPack-zh_cn-6.3.1.zip文件,这是实际的中文语言包。 4. **解压...
糖魔法(Sugar Spells)是一个以糖果为主题的网站设计项目,它主要使用了CSS技术来构建一个充满甜美和奇幻风格的网页。在这个项目中,开发者通过CSS实现了丰富的视觉效果和交互体验,为用户创造了一个沉浸式的虚拟...
"QCT"通常指的是Qualcomm Chipset Technology,暗示这个工具可能与高通芯片的Android设备有关。"SP"可能是Service Pack或Special Package的缩写,意味着这是一个专门的更新或服务包。 【描述】"Sugar QCT_SP"的描述...
### SugarCRM项目常见面试问题详解 #### 一、SugarCRM项目简介 SugarCRM是一个由美国SugarCRM公司开发的开源客户关系管理系统(Customer Relationship Management, CRM),它采用了B/S(Browser/Server)架构,...