• Tomcat性能监控


    一、前言

    项目中有时候我们需要监控tomcat的线程池、错误数、吞吐量、响应时间、CPU 以及 JVM 内存等性能,这个时候我们就需要考虑怎么实现tomcat监控。

    二、实现方式

    常见的tomcat监控有两种实现方式:
    1.使用JVX来实现
    2.使用开源的 psi-probe来实现

    三、使用JVX来实现

    1.tomcat安装目录的bin目录下新建 setenv.sh 文件

    touch setenv.sh
    
    • 1

    2.使用 vi 编辑器修改文件并添加以下内容然后保存
    (如果你想实现远程连接则还需要加入: -Djava.rmi.server.hostname=服务器ip地址)

    CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9000 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
    
    • 1

    说明:

    • Dcom.sun.management.jmxremote.port=9000 – 可以根据需要修改端口号。
    • Dcom.sun.management.jmxremote.ssl=false - 意味着不使用 SSL 连接
    • Dcom.sun.management.jmxremote.authenticate=false - 当您使用 JMX 客户端连接到 Tomcat 实例时不需要身份验证。

    3.文件增加可执行权限

    chmod 755 setenv.sh
    
    • 1

    4.重启tomcat

    5.验证JMX是否启动

    ps -ef|grep jmx
    
    • 1

    我的输出如下:

    root       9372     1 0 21:30 pts/0   00:00:04 java -Djava.util.logging.config.file=/home/chandan/Downloads/apache-tomcat-8.0.28/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9000 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.endorsed.dirs=/home/chandan/Downloads/apache-tomcat-8.0.28/endorsed -classpath /home/chandan/Downloads/apache-tomcat-8.0.28/bin/bootstrap.jar:/home/chandan/Downloads/apache-tomcat-8.0.28/bin/tomcat-juli.jar -Dcatalina.base=/home/chandan/Downloads/apache-tomcat-8.0.28 -Dcatalina.home=/home/chandan/Downloads/apache-tomcat-8.0.28 -Djava.io.tmpdir=/home/chandan/Downloads/apache-tomcat-8.0.28/temp org.apache.catalina.startup.Bootstrap start
    root       9816   9781 0 21:46 pts/0   00:00:00 grep --color=auto jmx
    
    • 1
    • 2

    6.使用 Jconsole 连接 Tomcat JMX

    • 进入jdk安装目录下的bin目录,执行命令:
    ./jconsole
    
    • 1
    • 选择本地进程再选择相关的tomcat进程名,然后进行连接
      (如果你想远程连接并且上面配置了Djava.rmi.server.hostname参数则可输入ip地址端口以及服务器用户名密码来连接)
      在这里插入图片描述
      在这里插入图片描述

    四、使用psi-probe来实现

    psi-probe项目地址
    psi-probe安装包下载

    1.服务器tomcat的webapps目录下新建probe文件夹,把psi-probe安装包放入probe文件夹下

    2.使用 unzip probe.war 命令把压缩包解压,然后删除probe.war安装包

    3.进入tomcat的bin目录下,修改catalina.sh文件,加上:

    SET JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote
    
    • 1

    4.进入tomcat的conf目录下,修改tomcat-users.xml文件,加上:

     <role rolename="manager"/>
      <role rolename="tomcat"/>
      <role rolename="manager-gui"/>
      <user username="tomcat" password="tomcat" roles="manager,tomcat,manager-gui"/>
    
    • 1
    • 2
    • 3
    • 4

    5.重启tomcat

    6.浏览器输入http://你的服务器ip:8080/probe/ 输入第4步设置的用户名和密码tomcat,便可进入监控界面


    参考:
    How to Enable JMX in Tomcat to Monitor & Administer
    Psi Probe 安装及使用说明
    如何监控Tomcat的性能
    tomcat监控工具psi-probe

  • 相关阅读:
    OpenWrt部署配置openVPN服务器
    【云原生K8S】kubeadm部署kubernetes集群
    源程序 正算主程序 GSZS
    二.镜头知识之镜头总长,法兰距,安装接口
    【无标题】
    性能测试 —— 吞吐量和并发量的关系? 有什么区别?
    【CSS】css转换、css过渡、css动画_09
    Leetcode P620 DFS解法,思路简单易懂
    redis -- 数据类型及操作
    Langchain-Chatchat项目:1-整体介绍
  • 原文地址:https://blog.csdn.net/qq_33697094/article/details/126281099