`
liwenshui322
  • 浏览: 518996 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

(转)Jvisualvm监控tomcat性能

 
阅读更多

原博客地址: http://doc.okbase.net/zzone/archive/121301.html

 

Linux 查看端口命令

lsof -i:端口号

 

 

 

服务器是linux,我们远程在window系统上监控

 

使用JMX方式

 

 

 

[root@bspdev jdk1.7.0_09]# cd $JAVA_HOME/jre/lib/management

[root@bspdev management]# pwd

/usr/java/jdk1.7.0_09/jre/lib/management

[root@bspdev management]# ls -l

total 28

-rw-r--r-- 1 root root  3998 Sep 25  2012 jmxremote.access

-rw-r--r-- 1 root root  2856 Sep 25  2012 jmxremote.password.template

-rw-r--r-- 1 root root 14097 Sep 25  2012 management.properties

-rw-r--r-- 1 root root  3376 Sep 25  2012 snmp.acl.template

 

首先利用password.template文件创建jmxremote.password文件,并且设置相应的读写权限。

[root@bspdev management]# cp jmxremote.password.template jmxremote.password

[root@bspdev management]# ls -l

total 32

-rw-r--r-- 1 root root  3998 Sep 25  2012 jmxremote.access

-rw-r--r-- 1 root root  2856 Jul  5 06:09 jmxremote.password

-rw-r--r-- 1 root root  2856 Sep 25  2012 jmxremote.password.template

-rw-r--r-- 1 root root 14097 Sep 25  2012 management.properties

-rw-r--r-- 1 root root  3376 Sep 25  2012 snmp.acl.template

[root@bspdev management]#

 

修改jmxremote.password的文件权限,否则报错必须限制口令文件读取访问权限:jmxremote.password

Chmod –R 600 jmxremote.password

jmxremote.password中的权限部分注释标记去除。

# password "QED".  The "controlRole" role has password "R&D".

#

# monitorRole  QED

# controlRole   R&D

 

修改为:

 

monitorRole  QED

controlRole   R&D

 

"jmxremote.password" 64L, 2852C written

 

下一步修改Tomcat的启动语句,将bin/catalina.sh文件vi编辑:

   将原

   JAVA_OPTS="-Xmx1024M -Xms512M -Xss3M" 

   export JAVA_OPTS

   调整为

  CATALINA_OPTS="-Xmx1024M -Xms512M -Xss3M -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true" 

   export CATALINA_OPTS

 

注意这里不要使用JAVA_OPTS这个变量,否则会出现错误代理抛出异常错误: java.rmi.server.ExportException: Port already in use

 

为什么会出现这个错误呢看官方的说法:

 

#   JAVA_OPTS       (Optional) Java runtime options used when any command 

#                   is executed. 

#                   Include here and not in CATALINA_OPTS all options, that 

#                   should be used by Tomcat and also by the stop process, 

#                   the version command etc. 

#                   Most options should go into CATALINA_OPTS. 

#   CATALINA_OPTS   (Optional) Java runtime options used when the "start", 

#                   "run" or "debug" command is executed. 

#                   Include here and not in JAVA_OPTS all options, that should 

#                   only be used by Tomcat itself, not by the stop process, 

#                   the version command etc. 

#                   Examples are heap size, GC logging, JMX ports etc. 

很明显  JAVA_OPTS变量会被任何命令执行时调用,而CATALINA_OPTS只是在启动、运行、调试的命令中才会被调用。

jmx配置参数

1、配置Tomcat catalina.sh 
找到# OS specific support. $var _must_ be set to either true or false.添加如下变量: 
JAVA_OPTS="-Dcom.sun.management.jmxremote.port=1090 --配置jmx远程监听端口1090,指定任意未被占用端口 
-Dcom.sun.management.jmxremote.authenticate=true --启用用户认证 
-Dcom.sun.management.jmxremote.ssl=false --禁用ssl 
-Djava.rmi.server.hostname=10.111.43.164 --绑定远程主机IP 
-Dcom.sun.management.jmxremote.acccess.file=/opt/apache-tomcat-7.0.2/jconsole/jmxremote.access --配置用户访问权限 
-Dcom.sun.management.jmxremote.password.file=/opt/apache-tomcat-7.0.2/jconsole/jmxremote.password" --配置用户信息,包括用户名和密码 
如果不需要配置访问用户名及密码,配置如下: 
# OS specific support. $var _must_ be set to either true or false. 
JAVA_OPTS="-Dcom.sun.management.jmxremote.port=1090 
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false 
-Djava.rmi.server.hostname=10.111.43.164" 
选项配置文件说明:$JAVA_HOME/jre/lib/mamagement/jmxremote.properties 
2、切换用户到root,修改/etc/hosts添加IP地址。添加如下信息: 
10.111.43.164 fmcods.localdomain fmcods localhost.localdomain localhost 
3、创建jmxremote.passwordjmxremote.access文件 
#mkdir -p $JAVA_HOME/jconsole 
#cp $JAVA_HOME/jre/lib/management/jmxremote.password.template $JAVA_HOME/jconsole/jmxremote.password 
#cp $JAVA_HOME/jre/lib/management/jmxremote.access $JAVA_HOME/jconsole/jmxremote.access
修改文件权限: 
#chmod -R 775 jconsole 
此时提示错误必须限制口令文件读取访问: $JAVA_HOME/jconsole/jmxremote.password 
解决办法:在$CATALINA_BASE目录下新建jconsole文件夹,访问文件权限必须是600 
#mkdir -p $CATALINA_BASE/jconsole 
复制jmxremote.passwordjmxremote.access$CATALINA_BASE/jconsole,修改文件权限 
#chmod -R 600 jmxremote.password 
#chmod -R 600 jmxremote.access 
4$CATALINA_BASE/bin/shutdown.sh.出现连接端口被占用提示。 
5ps -ef | grep 1090 --被占用端口 
6kill -9 pid 
7、重启
Tomcat.$CATALINA_BASE/startup.sh 
8jconsole 远程连接

分享到:
评论

相关推荐

    Tomcat启动参数及监控参数配置

    三、jVisualVM监控Tomcat jVisualVM是Java SDK自带的一款强大的多合一Java应用性能分析工具,可以用来监控Tomcat: 1. **连接Tomcat**: - 启动jVisualVM,选择"Remote",输入Tomcat的JMX连接信息,包括主机名、...

    监控tomcat内存使用情况

    总的来说,监控Tomcat内存使用情况是一项重要的维护任务,它有助于保持系统的健康运行,并能及时发现和处理可能导致系统性能下降的问题。通过理解和利用Tomcat提供的管理工具,以及第三方的内存分析工具,我们可以...

    zabbix监控tomcat模版及jar包

    总的来说,通过JMX和Zabbix监控Tomcat,不仅可以实时监控Tomcat的运行状态,还可以预防潜在的性能问题和故障,提高系统的稳定性和可用性。对于大型企业或复杂环境,这样的监控机制显得尤为重要。

    使用visualvm工具进行tomcat性能调优和性能监控.docx

    使用 VisualVM 工具进行 Tomcat 性能调优和性能监控 本文主要介绍了如何使用 VisualVM 工具来进行 Tomcat 的性能调优和性能监控。下面将详细介绍相关知识点: 一、JDK 内存优化 在 Tomcat 中,默认的堆大小为 128...

    jvisualvm操作手册for linux菜鸟

    jvisualvm操作手册for linux菜鸟 jvisualvm是一款功能强大的Java虚拟机(JVM)监控工具,由Oracle提供,自JDK 6 ...jvisualvm是一款功能强大的Java虚拟机监控工具,能够帮助我们实时监控服务器性能,快速排查问题。

    Tomcat性能优化

    【Tomcat性能优化】是提升应用服务响应速度和系统稳定性的关键步骤,涉及到多个层面的调整。首先,从外部环境优化来看,优化主要包括服务器硬件配置、操作系统调优和Java虚拟机(JVM)配置。 1. **服务器硬件优化**...

    Tomcat和MySql和Jvm和Oracle性能监控和调优

    一、Tomcat性能监控与调优 Tomcat是一款广泛应用的Java Servlet容器,其性能优化主要涉及以下几个方面: 1. **配置调整**:调整最大线程数、最小线程数、空闲超时时间等参数,以平衡资源利用和响应速度。 2. **类...

    Java生产环境下性能监控与调优详解

    基于JDK命令行的监控 基于JVisualVM的可视化监控 基于Btrace的监控调试 Tomcat性能监控与调优 Nginx性能监控与调优 JVM层GC调优 JVM字节码与java代码层调优

    JVisualVM简介与内存泄漏实战分析

    JVisualVM是Java平台的一个强大的可视化工具,它可以帮助开发者监测和调试应用程序的性能问题,特别是那些与内存管理相关的故障。作为NetBeans的一个子项目,JVisualVM自JDK 1.8起就已经被集成到标准发行版中,这...

    Tomcat 8 免安装版本

    - Tomcat 8提供了管理工具,如`manager`和`admin`应用,用于管理Web应用的部署和监控。 - 配置这些管理应用需要在`conf/tomcat-users.xml`中添加用户和角色。 5. **日志和调试** - Tomcat的日志文件位于`logs`...

    Tomcat常见问题集锦(持续更新)

    - 调整JVM的内存参数(如`Xms`, `Xmx`, `MaxPermSize`, `XX:MaxMetaspaceSize`等)对于优化Tomcat性能至关重要。 5. **日志管理**: - Tomcat的日志文件通常位于`logs`目录下,包括`catalina.out`、`host-manager...

    jdk1.8-32 tomcat 8.0

    为了进行调试和性能优化,可以利用JDK 1.8提供的工具,例如JVisualVM,它可以提供CPU、内存和线程的实时监控,帮助开发者找到性能瓶颈。同时,JDK的JMX(Java Management Extensions)功能也可以用来远程监控和管理...

    apache-tomcat-8.5.32-windows-x64安装版

    - 可以使用JMX(Java Management Extensions)监控Tomcat的运行状态。 以上是关于Apache Tomcat 8.5.32在64位Windows系统上的安装和使用的基本知识,实际操作中,开发者还需要根据具体需求进行更深入的配置和优化...

    Java应用性能监控和调优(思维导图)

    将视频整合成为思维导图,看着方便,节省时间。 内容包括:(1)基于JDK命令后工具的监控(2)基于Btrace的监控调试...(4)java代码层优化(5)JVM层GC调优(6)基于JVisualVM的可视化监控(7)tomcat性能监控和调优

    tomcat7(linux版本)

    9. **监控和故障排查**:使用JMX(Java Management Extensions)可以远程监控Tomcat的状态。`jconsole`或`jvisualvm`等工具可以帮助分析Tomcat的性能和内存状况。 10. **故障恢复**:如果遇到问题,如启动失败,应...

    tomcat安装包zip

    - JMX(Java Management Extensions)可以远程监控Tomcat的运行状态。 9. **与其他应用服务器集成**: - Tomcat可以作为独立服务器,也可以与Spring Boot、EJB容器(如JBoss、WebLogic)等结合使用。 10. **故障...

    最新版linux apache-tomcat-9.0.36.tar.gz

    - 使用JVM的性能监视工具(如JVisualVM)监控内存使用、CPU负载,以优化Tomcat的性能。 7. **部署与更新应用**: - 将WAR文件放入`webapps`目录,Tomcat会自动部署应用。 - 更新应用时,只需替换现有WAR文件或在...

    tomcat安装包

    - 使用JVisualVM或其他性能分析工具监控Tomcat的CPU、内存使用情况。 10. **与其他技术集成** - Tomcat可以与Spring Boot、Hibernate、MyBatis等框架配合使用,构建完整的Java Web应用。 - 也可以作为其他服务器...

Global site tag (gtag.js) - Google Analytics