Topic: 关于JBOSS性能调优的问题(ThreadPool相关) |
Print this page |
1.关于JBOSS性能调优的问题(ThreadPool相关) | Copy to clipboard |
Posted by: zeelong Posted on: 2006-08-09 11:06 系统运行环境: 应用服务器:1G内存,P4 3.0 数据库服务器:Oracle9i RAC 应用程序架构:SLSB+Hibernate+Struts+JSP/Servlet,在获得Home对象是采用了缓存,EJB与WEB端之间采用了Façade/delegate,由Delegate类代理了所有WEB端对EJB端的访问 部署方式:Jboss3.2.7+Resin3.0.13 测试实例: 用HttpUnit模拟了200个并发访问系统的一个模块 整个操作过程有三步:登录-》组织数据-》审核,其中数据组织和审核均有存储过程完成,其中数据组织(不超过30S)和审核(不超过2分钟)事务较长, 若干配置参数: Jboss Connection Pool Max=200 Min=10 ThreadPool KeepAliveTime=60000 MinimumPoolSize=1 MaximumPoolSize=100 MaximumQueueSize=1000 Resin Thread pool=128 在测试过程中发现登录在进行了150个左右,就停滞不前,怀疑在Resin处发生了堵塞; 通过打印出的耗时发现EJB实例负载一切正常(说明内存收集及对象池工作正常),数据库连接也获得正常,但JBOSS停滞不前(此时Thread约165左右),怀疑是TheadPool不够大; 因为业务逻辑采用了存储过程所以所有的运算、内存压力均在Oracle RAC端,RAC表现一切正常 我想请教各位的是,以上提到的各个参数之间有什么关系,例如WEB端的ThreadPool和JBOSS端的ThreadPool有何关系?对象池大小和ThreadPool有何关系? |
2.Re:关于JBOSS性能调优的问题(ThreadPool相关) [Re: zeelong] | Copy to clipboard |
Posted by: spi_cn Posted on: 2006-08-09 12:39 一般来说线程池的数量应该是估计最大并发数的125%,例如:如果想测试200的并发连接,则应该设置成250; |
3.Re:关于JBOSS性能调优的问题(ThreadPool相关) [Re: zeelong] | Copy to clipboard |
Posted by: zeelong Posted on: 2006-08-10 09:41 在我后来的测试中,如果每个并发之间有点延时,则不会出现这种情况。 另外在测试过程中发现JBOSS3.2.7线程池的峰值一般保持在164左右,如果每个并发连接之间有延时,则线程池的峰值可以达到200多。 |
4.Re:关于JBOSS性能调优的问题(ThreadPool相关) [Re: zeelong] | Copy to clipboard |
Posted by: 老肥羊 Posted on: 2008-03-01 13:51 resin没有用过 jboss的话可以配到300 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |