1.系统性能瓶颈分析
影响系统性能的因素:
CPU:计算MEM:缓存磁盘:持久化存储网络:数据传输2.不同的系统性能压力点不同
门户网站、文件服务、政企办公:网络带宽瓶颈、缓存多(偏静)
流媒体应用、科学计算:进程多、消耗内存多、磁盘IO频繁(偏动)
企业生产应用:DB压力大、存储压力大、内存压力大、CPU压力大(动&静)
3.系统架构层次分析:
各层次性能的关注点:
操作系统资源分配系统资源:服务器、客户机cpu、内存、硬盘等配置
操作系统:操作系统资源分配
应用服务中间件配置连接数等等
程序和数据库程序:内存、线程的锁、或其他功能性的问题
数据库:参数的配置
4.中间件Tomcat配置调优
Tomcat连接数配置实例:
A项目的server.xml的配置文件
sudo find / -name *tomcat*
相关配置参数解释:
maxThreads:Tomcat使用线程来处理接收的每一个请求。这个值表示Tomcat可以创建的最大的线程数。默认值为200.可以根据机器的实际性能和内存大小调整,一般可以在400-500,这个数值决定最多同时处理的连接minSpareThreads="25" 表示即使没有用户也要开25个空线程等待。maxSpareThreads="75" 表示如果最多可以空75个线程,例如某时刻有80用户访问,之后没有用户访问了,则tomcat不会保留80个空线程,而是关闭5个空线程acceptCount 指定所有可以使用处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数,请求将不予处理。默认值10connectionTimeout 网络连接超时,默认值20000,单位:毫秒。设置为0表示永不超时,这样设置存在隐患。通常可设置为30000毫秒遇到的问题:连接数配置不够,并发数超出最大连接数
Loadrunner报错:Error -27791 Server "173.31.1.20" has shut down the connection prematurely查看tomcat的日志(tomcat的安装目录下logs文件夹)文件catalina.-11-25.log,其中有以下错误信息:
1.-11-25 18:26:03 org.apache.tomcat.until.threads.ThreadPool logFull
2.严重:All threads(150) are currently busy, watting. Increase maxThreads(150) or check the servlet status.
5、jvm参数配置优化和代码优化
jvm参数配置
a. 设置环境变量: 变量名:CATALINA_OPTS 变量值:-Xmx128m -Xms64m -Xmn32m -Xss16m
b.打开Tomcat根目录下的bin文件夹,编辑catalina.sh,将其中的