日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

Java面典_【Java实用工具】——使用oshi获取主机信息

發(fā)布時(shí)間:2025/3/12 java 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java面典_【Java实用工具】——使用oshi获取主机信息 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

最近在籌劃做一個(gè)監(jiān)控系統(tǒng)。其中就要獲取主機(jī)信息,其中遇到一些問題。在此做個(gè)記錄,以便以后查閱。

在該監(jiān)控系統(tǒng)中,想要做到主機(jī)的CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)、線程、JVM內(nèi)存、JVM GC 等維度的監(jiān)控,JVM方面的監(jiān)控還好說,直接用JMX做就行了,關(guān)鍵是主機(jī)信息不好做監(jiān)控,JDK沒有直接的方案獲取系統(tǒng)主機(jī)信息。在剛開始想到了以下幾種方式獲取主機(jī)維度的信息。

image.png

一、命令行

剛開始想的是用最常用的命令行獲取主機(jī)維度的信息,具體做法是針對不同的系統(tǒng),寫不同的命令。比如說Linux系統(tǒng),使用TOP命令就能獲取到CPU、內(nèi)存等方面的信息。

top -b -n 1

執(zhí)行該TOP命令就能獲取到CPU、內(nèi)存等維度的信息

Tasks: 515 total, 1 running, 511 sleeping, 3 stopped, 0 zombie

Cpu(s): 14.5%us, 5.3%sy, 0.0%ni, 77.0%id, 0.8%wa, 0.0%hi, 2.4%si, 0.0%st

Mem: 65779104k total, 62037048k used, 3742056k free, 425804k buffers

Swap: 0k total, 0k used, 0k free, 21948492k cached

這種方式雖然好,但是需要針對不同系統(tǒng)做兼容。為了將懶字發(fā)揮到極致于是我就開始尋找現(xiàn)有的開源組件。然后找到了一個(gè)sigar的東西,貌似這個(gè)在業(yè)界內(nèi)應(yīng)用還挺廣的。

image.png

二、sigar

sigar的api用起來也挺方便的,簡單且使用人數(shù)多。

/ CPU數(shù)量(單位:個(gè))

int cpuLength = sigar.getCpuInfoList().length;

print(cpuLength);

// CPU的總量(單位:HZ)及CPU的相關(guān)信息

CpuInfo infos[] = sigar.getCpuInfoList();

for (int i = 0; i < infos.length; i++) {// 不管是單塊CPU還是多CPU都適用

CpuInfo info = infos[i];

print("mhz=" + info.getMhz());// CPU的總量MHz

print("vendor=" + info.getVendor());// 獲得CPU的賣主,如:Intel

print("model=" + info.getModel());// 獲得CPU的類別,如:Celeron

print("cache size=" + info.getCacheSize());// 緩沖存儲器數(shù)量

}

但是,sigar需要根據(jù)不同的系統(tǒng)下載不同的庫文件,傾入性較高。

sigar 庫文件

windows平臺:sigar-x86-winnt.dll

linux平臺:libsigar-x86-linux.so或

solaris平臺: libsigar-x86-solaris.so或libsigar-sparc-solaris.so或libsigar-sparc64-solaris.so

64位平臺:分為至強(qiáng)的libsigar-ia64-linux.so和AMD的libsigar-amd64-linux.so,sigar-amd64-winnt.dll

這樣就讓我很為難了,于是繼續(xù)在網(wǎng)上尋找。終于找到了oshi。

三、oshi

看看oshi是怎么獲取系統(tǒng)信息的吧

首先,引入jar包

com.github.oshi

oshi-core

${oshi.version}

然后,開擼

// 獲取主機(jī)信息

SystemInfo systemInfo = new SystemInfo();

// 獲取操作系統(tǒng)信息

OperatingSystem operatingSystem = systemInfo.getOperatingSystem();

operatingSystem.getNetworkParams().getHostName();

operatingSystem.getFamily();

operatingSystem.getVersion().getVersion();

operatingSystem.getVersion().getBuildNumber();

operatingSystem.getBitness();

operatingSystem.getProcessCount();

operatingSystem.getThreadCount();

就是這么簡單,不需要不同系統(tǒng)引入不同的庫文件,也不用自己做系統(tǒng)兼容。oshi自己做了兼容,目前大概兼容些這些系統(tǒng): Linux, Windows, Solaris, AIX, HP-UX, FreeBSD and Mac OSX。

四、對比

以上幾種方式,大概可以做個(gè)這樣的總結(jié):

命令行:靈活度高,兼容性強(qiáng),但是如果要兼容多個(gè)平臺的話,自己做還是有些麻煩。

sigar:社區(qū)活躍度高,參考文檔全面,麻煩在于需要不同平臺引入不同的庫文件。

oshi:拿來主義,使用方便,缺點(diǎn)在于文檔少。不過個(gè)人認(rèn)為看看github上的文檔就夠了,使用過程也沒有什么坑。

綜上,因?yàn)槲覀€(gè)人在開發(fā)的時(shí)候選擇的是oshi。

總結(jié)

以上是生活随笔為你收集整理的Java面典_【Java实用工具】——使用oshi获取主机信息的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品有限公司 | 亚洲精品久久久久久久蜜桃臀 | 一区二区三区亚洲精品 | 色噜噜狠狠一区二区三区牛牛影视 | 国产三级播放 | 欧美xo影院| 自拍第二页 | 国产专区第一页 | 日韩欧美自拍 | 国产私人影院 | 亚洲欧美另类中文字幕 | 久久久社区 | 日本不卡视频一区二区 | 亚洲区久久 | 精品久久久久一区二区国产 | 国产无套内射普通话对白 | 我和公激情中文字幕 | 国产主播av在线 | 裸体裸乳被免费看视频 | 在线观看视频国产 | 国产又大又黑又粗免费视频 | 成人极品视频 | 蜜桃臀aⅴ精品一区二区三区 | 总裁憋尿呻吟双腿大开憋尿 | 日本国产视频 | 黄色网址国产 | 色乱码一区二区三区 | 欧美一线高本道 | www.毛片.com| 亚洲国产精品999 | 亚洲美女屁股眼交3 | 亚洲性图一区二区 | 99热热久久 | 日本乱偷人妻中文字幕在线 | 亚洲丁香网 | 色黄视频 | 伊人影音 | 午夜小电影 | 日本免费在线播放 | 午夜精品久久久久久久久久 | 日本xxxxxxxxx | 欧美激情伊人 | 性xxxx另类xxⅹ| 欧美亚洲第一页 | 蜜臀aⅴ国产精品久久久国产老师 | 国产黄色高清视频 | 国产精品久久久久野外 | 国产高清在线视频观看 | 日本在线第一页 | 国产第一网站 | 日韩一级在线播放 | 黄色性情网站 | 一级特黄av | 国产免费一区二区视频 | 在线看a网站 | 一本久久久久 | 中文字幕免费高清在线观看 | 国产无码精品合集 | 爱情岛亚洲论坛入口福利 | 国产91在线视频观看 | 亚洲AV无码一区二区三区蜜桃 | 日皮毛片| 欧美色视 | 日韩最新在线 | 欧美色图一区二区三区 | 亚洲男女视频 | 亚洲欧美日韩在线一区 | 亚洲成人免费电影 | 国产第一精品视频 | 亚洲免费中文字幕 | 日韩性视频| 日本老熟妇毛茸茸 | 97人妻精品一区二区免费 | 一区二区视频在线免费观看 | 欧美日韩另类在线 | 人人妻人人藻人人爽欧美一区 | 国产美女毛片 | 操人视频在线观看 | 成人午夜视频免费在线观看 | 三级网站 | 男生捅女生肌肌 | 骚狐网站| 蜜臂av| 国产 丝袜 欧美中文 另类 | 欧美不卡视频 | 亚洲欧美视频在线播放 | 欧美日韩在线观看成人 | 在线视频一区二区 | 三日本三级少妇三级99 | 黄色三级网站 | 无码人妻丰满熟妇区毛片18 | 香蕉视频免费看 | 精品视频一区二区三区四区 | 成人超碰在线 | 人妻精品久久久久中文 | 777奇米四色 | 成人精品黄段子 | jizz日韩| 香蕉伊人|