Tomcat对于流量稍大网站的设定改进

前段时间一个项目,因为网站架构设计不合理,用户也用了快两年了,可是今年开始他们和其它网站合作,比如yahoo,这样的话,流量可能比较大,所以常常当机。
前几天有对程式进行少量的修改,然后调整tomcat的一些设定,性能方面,也比原来好很多,但是还是有一些吃力:
后来在正常我网络环境下压力测试,最高峰的时候,38,337次/小时请求首页
但是反应时间有些长,
后来我用软件看一下jvm的情况:
liveThreads :1228
demoThreads:1229
Heap都还有很多空白,没有怎么用完。
PermGen只有60M,且完全用完!
线程已经达到我开的值,所以反应时间长,可能是因为tomcat请求数已经满了,再来的请求就要排队。

下面把这个系统的运行环境给大家看一下,大家帮我看一下,还有没有哪里需要改善的

1.软件硬件环境
Intel(R) Xeon(R) cpu 5130 2.00GHz,2.00GHz
3.12GB RAM
server 2003 sp2
Tomcat6.0.13免安装版
JDK 1.5

2.Tomcat 下server.xml的一些设定
<Connector port="80"
maxHttpHeaderSize="8192"
maxThreads="1200"
minSpareThreads="80"
maxSpareThreads="300"
maxKeepAliveRequests="200"
enableLookups="false"
redirectPort="8443"
acceptCount="800"
connectionTimeout="20000"
disableUploadTimeout="true"
URIEncoding="UTF-8"/>

3. 内存是在catalina.bat里设定
set JAVA_OPTS=-Xms628m -Xmx1028m
在系统进行压力测试的情况下:
cpu占用在18%--70%(这是从任务管理器里看到的)
内存:1.18G(这是从任务管理器里看到的)
liveThreads :1228 (这是从visualvm里看到的)
demoThreads:1229(这是从visualvm里看到的)
Heap都还有很多空白,没有怎么用完。
PermGen只有60M,且完全用完!
这里我有一点奇怪,我明明设的maxThreads="1200" ,为什么这里会达到1228

附件中有个图片,是我在visualvm中看到的结果,
从16:00开始测试的,所以各种数据都是从16:00开始陡增

你可能感兴趣的:(apache,多线程,tomcat,nginx,linux)