性能测试 —— Tomcat监控与调优:status页监控

2023-09-20 21:33:57

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:表示当前活动的请求;

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
 

在这里插入图片描述

更多推荐

常见的查找算法以及分块搜索算法的简明教程

顺序查找最基本的查找算法举例//顺序查找publicstaticintsearchSequence(int[]arr,inttarget){inti=0;for(intarr2:arr){if(arr2==target){returni;}i++;}return-1;}二分查找[!warning]值得注意的是这个二分查

Go的性能优化建议

前言:\textcolor{Green}{前言:}前言:💞这个专栏就专门来记录一下寒假参加的第五期字节跳动训练营💞从这个专栏里面可以迅速获得Go的知识Go的性能优化建议3性能优化建议3.1性能优化建议-Benchmark3.2性能优化建议-slice3.3性能优化建议-Map3.4性能优化建议-字符串处理3.5性能

【AI视野·今日CV 计算机视觉论文速览 第248期】Mon, 18 Sep 2023

AI视野·今日CS.CV计算机视觉论文速览Mon,18Sep2023Totally83papers👉上期速览✈更多精彩请移步主页Interesting:📚Robuste-NeRF,处理高速且大噪声事件相机流的NERF模型。(fromNUS新加坡国立)稀疏噪声事件与稠密事件数据的区别:模型架构:项目网站:https:

Python网络编程(socket)

网络编程指的是:在程序中实现两台计算机之间的通信。Python提供了大量网络编程的工具和库,本文重点学习socket和select模块。网络编程涉及许多关于TCPIP的基础知识,本文默认对这些知识已经了解了,不再对TCPIP相关的知识进行学习。socket模块这个模块提供了访问BSD套接字的接口。在所有现代Unix系统

开始在 Windows 上将 Python 用于 Web 开发

🎬岸边的风:个人主页🔥个人专栏:《VUE》《javaScript》⛺️生活的理想,就是为了理想的生活!目录设置开发环境安装适用于Linux的Windows子系统设置VisualStudioCode创建新项目安装Python、pip和venv创建虚拟环境打开WSL-Remote窗口安装MicrosoftPython扩

【C# 基础精讲】抽象类与接口

抽象类(AbstractClass)和接口(Interface)是面向对象编程中两种重要的概念,它们用于定义类的结构、行为和关系,是实现多态性、代码复用和系统设计的关键手段。在C#及其他面向对象编程语言中,抽象类和接口都发挥着重要作用。本文将详细解释抽象类和接口的概念、特点、用法以及在C#中的应用。1.抽象类的概念与特

同城信息服务源码 本地生活服务小程序源码

同城信息服务源码本地生活服务小程序源码功能介绍:基本设置:网站参数、安全设置、分站管理、支付设置、操作日志、地区设置、公交地铁、国际区号、清理缓存、模板风格、模块管理、域名管理、底部菜单、消息通知、登录设置其他设置:关键词管理、单页文档、网站公告、帮助信息、网站协议、广告设置、友情链接、举报管理、意见反馈、投诉列表短信

CH573-09-BLE蓝牙安卓应用二次开发——RISC-V内核BLE MCU快速开发教程

一、基础工程搭建在上一章最后一讲的BLE蓝牙例程中,我们使用了沁恒官方的BLE调试助手完成数据发送,接下来我们使用AndroidStudio完成一款简易的BLE调试助手。1、参考文章我这里参考了CSDN中的一位博主“摸爬滚打的程序媛”的文章以及对应文章中的AndroidStudioBLE应用工程的Demo。版权声明:链

MP3算法及代码例程

MP3(MPEG-1AudioLayerIII)是一种数字音频压缩算法,用于对音频进行高效的压缩。MP3算法能够显著减小音频文件的大小,同时保持较高的音质。以下是MP3算法的主要步骤:采样率转换:将输入音频信号的采样率转换为固定的值,通常为44.1kHz。这是因为人耳对于音频的感知范围大约在20Hz到20kHz之间,因

9.3.5网络原理(应用层HTTP/HTTPS)

一.HTTP:1.HTTP是超文本传输协议,除了传输字符串,还可以传输图片,字体,视频,音频.2.3.HTTP协议报文格式:a.首行,b.请求头(header),c.空行(相当于一个分隔符,分隔了header和body),d.正文(body).4.5.URL:唯一资源描述符(长度不限制).a.b.注意:查询字符串(qu

第29章_瑞萨MCU零基础入门系列教程之改进型环形缓冲区

本教程基于韦东山百问网出的DShanMCU-RA6M5开发板进行编写,需要的同学可以在这里获取:https://item.taobao.com/item.htm?id=728461040949配套资料获取:https://renesas-docs.100ask.net瑞萨MCU零基础入门系列教程汇总:https://b

热文推荐