- 论坛徽章:
- 33
|
回复 7# calmdown729
这两样东西, 我都只能算是用过, 不能算是精通.
我不是太清楚你这个"并发"的概念具体是指的什么, 我个人对"并发"的理解, 是指的同一时刻.而且, 我指的是请求数, 不是用户数.
所以, 以我的理解, 单台 tomcat 不可能 支持 超过 10000个并发.
不过, 很多人偷换了"并发"的概念, 变成了同时响应的用户数, 这个时候, 在同一时刻的并发, 远没有那么高. 用户的请求是被排队了. 所以, 同一时刻, 服务器处理的请求数远小于并发数. 假如 tomcat 可以精确到 ms 来计算的话, 那么, 如果1ms 可以处理1个请求, 那1s也处理了 1000个请求了. 或者这样说, 10ms处理了两个请求, 那 1s也能处理 200个请求了. 而用户如果可以等待3s, 那已经有600个并发了.
所以, 如果 你所说的并发是后者的话, 10000 应该是可以支持的.
我没有看到你的数据, 从你说的现象上看, 很象是cache的原因导致的并发数下降. 当你用单一机器发送请求时, 数据很有可能都是在cache中了. 但当你用两台机器发送请求的时候, 由于内存分配(猜的)等原因, 可能有些数据无法被cache, 所以, 导致响应变慢, 这个, 会有恶性循环, 越来越差的情况出现.
如果条件可以, 你可以试试用 4个 jameter 来压一下, 看看会不会继续下降. 如果会, 那要看一下 tomcat 关于 cache的处理的相关地方了. |
|