websphere java和进程管理_jvisualvm/Jconsole监控WAS(WebSphere)中间件
1、登錄was控制臺(tái)https://196.168.119.18:9043/ibm/console/,找到自己的應(yīng)用程序服務(wù)器---java和進(jìn)程管理---進(jìn)程定義--JAVA虛擬機(jī),然后配置 通用JVM 參數(shù)
加入以下jvm參數(shù):
-Djavax.management.builder.initial=
-Dcom.sun.management.jmxremote.port=7001
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
注意:等號(hào)后面一定要保留空格,否則會(huì)報(bào)錯(cuò)。先執(zhí)行netstat -ano | grep 7001,查看這個(gè)端口是否被使用。另外注意防火墻對(duì)7001端口的配置,要放開,否則遠(yuǎn)程機(jī)器可能連接不上.
2、修改/usr/IBM/WebSphere/AppServer/java/jre/lib/management下的management.properties文件,在最后加入
com.sun.management.jmxremote.port=7001
com.sun.management.jmxremote.authenticate=false
com.sun.management.jmxremote.ssl=false
3、設(shè)置jconsole遠(yuǎn)程登錄的用戶名和密碼在/usr/IBM/WebSphere/AppServer/java/jre/lib/management下有個(gè)jmxremote.password.template文件,在最后面加入你要設(shè)置的用戶名和密碼
root root@123 (用戶名、密碼,可以隨意修改)
備注:(第二、三步,我在實(shí)際操作中,沒有配置也是可以連接的)
4、在was控制臺(tái)上停掉自己的應(yīng)用程序服務(wù)器,然后重啟。
進(jìn)入JAVA_HOME所在的bin目錄,運(yùn)行jvisualvm.exe或Jconsole.exe就可以啟動(dòng)遠(yuǎn)程連接WAS服務(wù)器的話,需要添加JMX連接方式就可以了
分析:
內(nèi)存溢出的原因有很多種,比如:
1、數(shù)據(jù)量過于龐大;死循環(huán) ;靜態(tài)變量和靜態(tài)方法過多;遞歸;無法確定是否被引用的對(duì)象;
2、虛擬機(jī)不回收內(nèi)存(內(nèi)存泄漏);說白了就是程序運(yùn)行要用到的內(nèi)存大于虛擬機(jī)能提供的最大內(nèi)存就發(fā)生內(nèi)存溢出了。
內(nèi)存溢出的問題要看業(yè)務(wù)和系統(tǒng)大小而定,對(duì)于某些系統(tǒng)可能內(nèi)存溢出不常見,但某些系統(tǒng)還是很常見。
內(nèi)存溢出的一般解決方法:
一個(gè)是優(yōu)化程序代碼,如果業(yè)務(wù)龐大,邏輯復(fù)雜,盡量減少全局變量的引用,讓程序使用完變量的時(shí)候釋放該引用,能夠讓垃圾回收器回收和釋放資源。
二就是物理解決,增大物理內(nèi)存,然后通過-Xms256m -Xmx2048m 的修改來增大內(nèi)存空間。
總結(jié)
以上是生活随笔為你收集整理的websphere java和进程管理_jvisualvm/Jconsole监控WAS(WebSphere)中间件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java int parse_java中
- 下一篇: java 二叉堆_二叉堆(三)之 Jav