Jconsole远程监控tomcat 的JVM内存(linux、windows)

Jconsole是JDK自带的监控工具,在JDK/bin目录下可以找到。它用于连接正在运行的本地或者远程的JVM,对运行在java应用程序的资源消耗和性能进行监控,并画出大量的图表,提供强大的可视化界面。而且本身占用的服务器内存很小,甚至可以说几乎不消耗,不失为一款好工具。

-------------Jconsole监视远程的linux服务器上的tomcat ----------------------------- 环境: 服务器端: Linux + jdk1.60 + tomcat 7 客户端: Windows + jdk1.6.0

1、linux服务器上的tomcat 的bin/catalina.sh文件, 在# OS specific support.  $var _must_ be set to either true or false. 这一行之后, 加入以下参数: 

JAVA_OPTS="-Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false" 

  一般是这样地:

1.JAVA_OPTS="-Xms256m -Xmx512m -Xss1024K -XX:PermSize=128m -XX:MaxPermSize=256m" JAVA_OPTS=" -Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false "   

2、 linux服务器 执行hostname -i 命令,如果显示的是127.0.0.1,则需要修改/etc/hosts文件,否则jconsole无法链接。 # vi /etc/hosts,修改如下: 原值是: 127.0.0.1 localhost localhost.localdomain localhost 修改为: 服务器的真实IP地址 localhost localhost.localdomain localhost 3  linux服务器的防火墙,也要开相应端口. 4  客户端:            1. 打开cmd窗口,输入jconsole            2. 指定连接参数:                    远程主机: 服务器的真实IP地址                    端口: 9008 5、补充:由于配置了上述文件,在停止tomcat的时,会由于上述配置的端口被占用而无法停掉。2种方式解决: (1)使用killall -9 java 杀掉所有的java进程。 (2)在catalina.sh中配置CATALINA_PID=pid,这样在停止tomcat的过程中,上述被占用的端口会自动被杀掉。

-----------------Jconsole监视远程的Windows服务器上的tomcat ------------------------- 修改服务器tomcat的bin/catalina.bat文件, 在以下行: rem Guess CATALINA_HOME if not defined set CURRENT_DIR=%cd% 加入以下参数:

1.set JAVA_OPTS=-Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false  

注意添加的位置:

重启服务器tomcat 打开cmd窗口,输入jconsole,连接。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏前端下午茶

使用Jenkins持续集成前端项目并自动化部署到Nginx服务器

上午折腾了一下Jenkins持续集成,由于公司使用自己搭建的svn服务器来进行代码管理,因此这里Jenkins是针对svn服务器来进行的配置,后面稍微介绍了下针...

1.8K20
来自专栏纯洁的微笑

springcloud(六):配置中心git示例

随着线上项目变的日益庞大,每个项目都散落着各种配置文件,如果采用分布式的开发模式,需要的配置文件随着服务增加而不断增多。某一个基础服务信息变更,都会引起一系列的...

351100
来自专栏杂烩

javaee项目性能检测之JavaMelody

    它并不是一个模拟请求类似JMeter的压力测试工具,而是一个衡量并且计算在应用上的操作信息的工具,也就是说,它只负责对行为进行监控,而不负责触发操作。J...

36720
来自专栏aCloudDeveloper

UNIX环境高级编程笔记之线程

  本章涉及到线程的一些基本知识点,讨论了现有的创建线程和销毁线程的POSIX.1原语,此外,重点介绍了线程同步问题,讨论了三种基本的同步机制:互斥量、读写锁、...

27860
来自专栏上善若水

013android初级篇之Android Studio 引用源码模块,jar及so文件

013android初级篇之Android Studio 引用源码模块,jar及so文件

27920
来自专栏老安的博客

openstack 集成vmware 填坑经验

11720
来自专栏魏艾斯博客www.vpsss.net

Memcached 只允许本地访问 11211 端口 解决未授权漏洞

84730
来自专栏大数据架构师专家

jenkins实战系列

本文主要介绍了在linux 下如何部署jenkins.以及通过jenkins 如何发布php.以及java 程序,利用jenkins 来实现邮件告...

26210
来自专栏贾鹏辉的技术专栏@CrazyCodeBoy

轻松搞定GitHub Pages

GitHub支持创建个人或组织以及项目这两种类型的网站。 本文章将向大家分享如何为项目、组织或个人创建一个GitHub Pages。 为项目创建GitHub ...

39780
来自专栏Phoenix的Android之旅

自定义Gradle Plugin

Gradle 是 Android 构建环节非常重要的一环,但并不是所有Android开发者对Gradle都足够熟悉,因为它在我们平时业务开发中,相对使用频率还是...

15510

扫码关注云+社区

领取腾讯云代金券