簡體   English   中英

如何在運行時檢查服務器的“ JVM / CPU /內存”?

[英]How can i check servers' “JVM / CPU / Memory” at runtime?

創建作業后,我想將其分配給密度較小的服務器。 如何在運行時檢查服務器的“ JVM / CPU /內存”? (我有4個服務器)(必須向我返回一個值)

您可以通過利用系統屬性和Java Management API來實現,而無需外部依賴。

這些屬性足以確定VM。

java.vm.specification.version   Java Virtual Machine specification version
java.vm.specification.vendor    Java Virtual Machine specification vendor
java.vm.specification.name  Java Virtual Machine specification name
java.vm.version         Java Virtual Machine implementation version
java.vm.vendor          Java Virtual Machine implementation vendor
java.vm.name            Java Virtual Machine implementation name
java.specification.version  Java Runtime Environment specification version
java.specification.vendor   Java Runtime Environment specification vendor
java.specification.name     Java Runtime Environment specification name

而且,您可以使用以下管理Bean來確定CPU和內存:

ManagementFactory.getMemoryMXBean();
ManagementFactory.getOperatingSystemMXBean();

嗯,您提供的信息不多。 您是否要以編程方式檢查這些信息? 使用哪些服務器? 服務器計算機上安裝了什么操作系統?

如果您使用任何種類的Sun Application Server(Glassfish / Oracle AppServ),則可以使用jconsole 這是一個JMX工具,可讓您遠程控制AppServer。

它與您的jdk一起提供,可以在%JAVA_HOME%/bin/jconsole.exe

啟動后,您可以通過IP,端口(對於Glassfish 8686)和用戶憑據連接到遠程計算機。

谷歌快速搜索顯示,它還可以通過添加一些配置來監視tomcat,jboss和websphere服務器。

例如Tomcat:

  • 導航到%TOMCAT_HOME%/bin/catalina.bat
  • 插入行SET JAVA_OPTS=-Dcom.sun.management.jmxremote (在第一個注釋的塊之后)
  • 重新啟動服務器
  • 使用jconsole

希望這有所幫助,玩得開心!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM