Tomcat服务器是一个免费的开放源代码的Web 应用服务器,Tomcat是Apache 软件基金会(Apache Software Foundation)Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。

Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户的场合下被普遍使用,是开发和调试JSP程序的首选。所以在性能测试过程需要经常监控Tomcat服务器。

通常监控Tomcat服务器的方法有以下三种:

  • 第一:使用Tomcat自带的status页进行监控。
  • 第二:使用Java管理扩展监测工具Jconsole进行监控。
  • 第三:使用Probe进行监控。

在本小节将对这三种监控方法进行详细的介绍。分为三章,大家记得收藏一下,防止走失~

status页监控

Status页对Tomcat监控的步骤如下:

  • 步骤1:修改配置文件tomcat-users(该文件在Tomcat安装程序根目录中的conf文件夹中),添加一个admin设置权限,在中添加的内容如下:
<role rolename="admin-gui"/>
<user username="admin" password="1234" roles="manager-gui"/>
  • 步骤2:修改完成后,重启Tomcat服务器,在浏览器中输入URL(http://localhost:8080/),如果是远程访问,访问的URL为http://IP:8080,如图10-4所示。

图10-4 Status Management页面

在Status Management页面,提供几种监控Tomcat的内容,主要包括Server status和Host Manager两个方面的内容。

  • Server status主要是显示服务器相关的信息,主要包括:Server Information、JVM和接连器相关的内容。
  • Server Information主要是显示了服务器配置的相关信息,如图10-5所示。

图10-5 Server Information内容

JVM部分主要显示了JVM的详细信息,包括JVM总的大小、剩余大小等相关信息,并统计了每个代所消耗内存的情况,当然如果需要看懂这些值,就必须和JVM设置相关的参数对照的来看,这样才可以更好的理解,当然如果要看详细的每个时间这个值的变化情况,这里是无法给到的。

图10-6 JVM信息

Free memory:30.38 MB Total memory: 65.60 MB Max memory: 506.31 MB
Free memory:空闲内存大小;
Total memory:总内存大小;
Max mermory:最大内存大小;

接连器在这里其实有两种:ajp和http两种连接器,我们一般看到多的是http的连接器,因为一般来说都是通过HTTP来发送请求的。HTTP连接器的内容如图10-7所示。

图10-7 HTTP连接器信息

Max threads: 300 Current thread count: 10 Current thread busy: 1 Keep alive sockets count: 1
Max processing time: 2357 ms Processing time: 8.778 s Request count: 155 Error count: 2 Bytes received: 0.00 MB Bytes sent: 2.03 MB

左右拉动查看完整代码

  1. Max threads:最大线程数;
  2. Min spare threads:最小空闲线程数;
  3. Max spare threads:最大空闲线程数;
  4. Current thread count:最近运行的线程数;
  5. thread busy:正在运行的线程数;
  6. Max processing time:最大CPU时间;
  7. Processing time:CPU消耗总时间;
  8. Request count:请求总数;
  9. Error count:错误的请求数;
  10. Bytes received:接收字节数;
  11. Bytes sent:发送字节数;

关于请求阶段的有以下几种情况:

  • P:表示正准备发送的请求;
  • S:表示请求正在服务器端处理;
  • F:表示已经完成的请求;
  • R:表示即将发送的请求;
  • K:表示当前活动的请求;

最后: 可以在我的VX公众号:【自动化测试老司机】免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的文章对你有所帮助的话,可以点赞三联支持一下哈!   

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐