前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >软件性能测试(连载17)

软件性能测试(连载17)

作者头像
顾翔
发布2020-03-06 16:55:28
5230
发布2020-03-06 16:55:28
举报

2.3 TomCat的性能监控

[28]Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Tomcat的计数器如表3-16所示。

表3-16 Tomcat的计数器

计数器

描述

JVM内存

关注GC回收频率, Full GC次数越少越好

最大线程数

线程连接数长期超过80%,需要优化

数据库连接数

活动连接数长期超过80%,需要优化数据库连接池

请求数/请求状态

线程数、线程状态,大量Blocked状态线程可以用Dump线程栈信息来分析

Tomcat的性能监控工具Probe请参看第8.4.2节来安装和使用。

2.4 MySQL监控

MySQL是最流行的关系型数据库管理系统,在Web应用方面MySQL是最好的 RDBMS(Relational DatabaseManagement System:关系数据库管理系统)应用软件之一。MySQL的关键性能指标如表3-17所示。

表3-17 MySQL的计数器

计数器

分析

Threads_connected

表示当前有多少个客户连接该mysql服务器,连接数是否过多,网络是否存在问题,它是动态变化的,当达到最大连接数时,数据库系统就不能提供更多的连接数了,这时,程序还想新建连接线程,数据库系统就会拒绝,如果程序没做太多的错误处理,就会出现报错信息。

Threads_running

如果数据库超负荷,将会得到一个正在(查询的语句持续)增长的数值。这个值也可以小于预先设定的值。这个值在很短的时间内超过限定值是没问题的。若超过预设值时且5秒内没有回落,要同时监视其他的一些值。

Aborted_clients

客户端被异常中断的数值,对于一些应用程序是没有影响的,但对于另一些应用程序可能要跟踪该值,因为异常中断连接可能表明一些应用程序有问题。

Questions

每秒钟获得的查询数量,也可以是全部查询的数量。

Opened_tables

指表缓存没有命中的数量。如果该值很大,就需要增加table_cache的数值。

Select_full_join

没有主键(key)联合(join)的执行。该值可能是零。这是捕获开发错误的好方法,因为这样的查询有可能降低系统的性能。

Select_scan

执行全表搜索查询的数量。如果发现该值持续增长,说明需要优化,缺乏必要的索引或其他问题。

Slow_queries

超过该值(--long-query-time)的查询数量,或没有使用索引查询数量。对于全部查询会有小的冲突。如果该值增长,表明系统有性能问题。

Threads_created

该值一般较低。较高的值意味着需要增加thread_cache的数值,或遇到了持续增加的连接,表明存在潜在的问题

进入MySQL后,可以通过show status;命令查看当前的计数器,使用flush status;命令清空当前的计数器。

代码语言:javascript
复制
MariaDB [sec]> show status;
+-----------------------------------------------+-------------+
| Variable_name                                      | Value   |
+-----------------------------------------------+-------------+
| Aborted_clients                                    | 0          |
| Aborted_connects                                   | 0          |
| Access_denied_errors                              | 0           |
| Acl_column_grants                                  |0           |
| Acl_database_grants                                |3           |
| Acl_function_grants                                |0           |
…
Uptime_since_flush_status                           | 39          |
+-----------------------------------------------+-------------+
368 rows in set (0.01 sec)

MONyog是一个优秀的MySQL监控工具,可以实时监测MYSQL服务器,查看MySQL服务器的运行状态。由于该工具非常强大,读者可以通过其他渠道进行了解。

顾翔老师与云测学院联合推出:软件测试分析与设计,请点击https://v.youku.com/v_show/id_XNDQ3MzkyNjk3Ng==.html?spm=a2hzp.8244740.0.0,收看。有不同观念欢迎与顾翔老师交流!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 软件测试培训 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2.3 TomCat的性能监控
  • 2.4 MySQL监控
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档