1. WEB服务器... 3
2. 操作系统调整... 3
2.1. 关闭所有无关服务... 3
2.2. 关闭IBM系统监控程序... 3
3. Tomcat容器调整... 4
3.1. 调整TOMCAT最大处理线程数... 4
3.2. 关闭TOMCAT的DNS功能... 4
3.3. 修改TOMCAT容器默认使用最大内存... 4
4. WEB应用调整... 5
4.1. 调整WEB应用的链接池大小... 5
5. WEB服务系统监控程序... 5
5.1. 程序功能... 5
5.2. 程序部署... 6
5.3. 运维使用帮助... 6
6. 数据库调整... 6
6.1. 数据库最大连接数... 6
7. 优化后测试结果... 6
型号:IBMX205
硬盘:36G
内存:512M
CPU
:Intel(R) Pentium(R) 4 CPU 2.80GHz
运行的应用主要为xxx Web服务公司主站Web服务
关闭
samba
,
mail
,
vsftp
等与提供
WEB
服务无关的系统服务,释放资源,减小系统冲突的可能。
IBM
为其服务器提供了一套
JAVA
版的系统和硬件监控程序,但是其运行对系统资源的暂用相当的大,高峰时期可以消耗调
50%
以上的系统资源和内存。现在关闭该程序释放资源
在
tomcat
服务配置文件
server.xml
中修改最大处理线程数。
文件路径:
/usr/tomcat-4.1.24/conf/server.xml
minProcessors:
最小处理线程数
maxProcessors
:最大处理线程数
acceptCount
:当系统所有可用链接使用完后,允许排队处理的数量
<Connector className="org.apache.catalina.connector.http.HttpConnector"
port="80" minProcessors="5" maxProcessors="400"
enableLookups="false" redirectPort="8443"
acceptCount="50" debug="0" connectionTimeout="60000" URIEncoding="GB2312"/>
当
web
应用程序向要记录客户端的信息时,它也会记录客户端的
IP
地址或者通过域名服务器查找机器名转换为
IP
地址。
DNS
查询需要占用网络,并且包括可能从很多很远的服务器或者不起作用的服务器上去获取对应的
IP
的过程,这样会消耗一定的时间。为了消除
DNS
查询对性能的影响我们可以关闭
DNS
查询,方式是修改
server.xml
文件中的
enableLookups
参数值:
文件路径:
/usr/tomcat-4.1.24/conf/server.xml
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="80" minProcessors="5" maxProcessors="75"
enableLookups="false" redirectPort="8443" acceptCount="100" debug="0"
connectionTimeout="20000" useURIValidationHack="false" disableUploadTimeout="true" />
修改
tomcat
容器使用的最大内存,提供容器的处理性能
:
文件路径:
/usr/tomcat-4.1.24/bin/catalina.sh
在文件中加入启动参数:
CATALINA_OPTS="$CATALINA_OPT
-Xms256m -Xmx400m"
通过修改应用配置文件,加大应用的链接池的最大链接数为
100
。
1.
修改配置文件
/usr/tomcat-4.1.24/webapps/xxx/WEB-INF/classes/ConnectionCache.xml
<?xml version="1.0" encoding="GB2312"?>
<Config>
<ConnectionCache name="xxx" user="dws" password="xxxx">
<HostConfig>
<url>jdbc:oracle:thin:@xxx.xxx.xx.xxx:1521:dws</url>
<minLimit>1</minLimit> <!—最小数据库链接数 -->
<maxLimit>100</maxLimit> <!—最大数据库链接数 -->
<cacheSchema>DYNAMIC_SCHEME</cacheSchema>
<cacheFixedWaitIdleTime>3</cacheFixedWaitIdleTime>
<cacheFixedWaitTimeout>30</cacheFixedWaitTimeout>
<cacheInactivityTimeout>3600</cacheInactivityTimeout>
<!-- 连接最大活动时间,即一个SQL语句最长的执行时间 -->
<cacheTimeToLiveTimeout>60</cacheTimeToLiveTimeout>
<!-- 连接池维护线程检测间隔时间 -->
<threadWakeUpInterval>60</threadWakeUpInterval>
<!-- 缓存数量 -->
<stmtCacheSize clearMetaData="false">120</stmtCacheSize>
</HostConfig>
</ConnectionCache>
</Config>
2.
重新启动服务
1.
监控当前操作系统连接中关于
WEB
服务相关的连接数量(数据库连接的已连接,等待,发送等状态;
WEB
服务器的
http
连接数量),如果当前连接异常,重新启动
WEB
服务器恢复。
2.
定时启动
WEB
服务器,释放资源暂用(一般在没有
http
连接的情况下)。
3.
检测
WEB
服务器响应情况,如果
WEB
服务器没有响应,重新启动服务器
.
程序文件:
/usr/tomcat-4.4.24/bin/tomcat_monitor.sh
crontab
定时计划:没
5
分钟检测一次
TOMCAT
服务和数据库链接状况
# crontab –l
# */5 * * * * /usr/tomcat-4.1.24/bin/tomcat_monitor.sh>/dev/null
2>&1
监控日志使用
:
/usr/tomcat-4.1.24/bin/conn.log
格式说明:
[2007-03-23
09:50:00] ESTABLISHED=6 TIME_WAIT=0 SYNCSENT=0 httpd=1
[2007-03-23
09:50:00] Tomcat is HTTP/1.1 200 OK
-
ESTABLISHED
:正在链接数据库链接
-
TIME_WAIT
:等待的链接
-
SYNCSENT
:正在发送的链接
-
Httpd
:
Apache
服务进程数
-
Tomcat is…
:“
HTTP/1.1 200 OK
”是
WEB
服务器对请求的返回处理状态值,
200
表示正常
根据需要须改数据库可以接受的外部连接数量,现在的最大值为:
150
个
测试工具:
Microsoft
Web Application Stress Tool