Tomcat上的平均最大并发用户数
-
06-07-2019 - |
题
我正在使用Web应用程序上的 JMeter
进行压力测试(使用Spring构建,Struts2 REST,使用PostgreSQL)。
我正在用我的应用程序模拟典型用户的场景:
4 GET,3 INSERT,20 UPDATE电话。
服务器规格:
4核Intel Xeon X5365 3GHz
8GB RAM
单个320GB SATA磁盘
操作系统:Ubuntu 8.10 32位
DB:Postgresql 8.4
Tomcat 6.0.18
Java 1.6.0_14
结果显示服务器将处理大约130个并发事务。这个号码可以吗?在线是否有任何结果与我的相比?
解决方案
瓶颈将存在于您的数据库中,因此在不了解数据库性能的情况下很难进行比较。
我们有一台类似的机器(除了16GB RAM,运行Tomcat 5.5)。在峰值负载下,它可以轻松地提供256个同时连接。我们正在争论将maxThreads更改为512。
一些调整技巧,
- 如果您将Apache作为前端运行,请使用
mod_jk
。它的性能远远优于mod_proxy
。 - 如果您直接提供HTTP或使用mod_proxy,请使用Tomcat 6中的NIO连接器。
- 确保您的线程池(maxThreads)足够大,默认值只有200。
- 让Tomcat成为无状态。特别是,不要使用HttpSession。状态可能会导致应用程序内存泄漏并逐渐降低性能。将您的所有状态推送到数据库或客户端(cookie)。
- 使用数据库池(DBCP)。我们有MySQL,JDBC驱动程序非常健谈。
- 如果您运行JMeter的一个实例,它可能会成为瓶颈。从不同网络运行多个从站以模拟实际生产负载。 醇>
不隶属于 StackOverflow