我尝试在 VPS 上进行测试,结果接近每秒 10K 的请求,这是一个simple 'hello world' servlet
. 更不用说调用 membase 了。
我的 VPS 是 2 x Intel Xeon X5570,四核“Nehalem”架构。
注意:我不是 java 专家,也不是 tomcat 专家,这是默认设置。
还有其他人可以处理如此高的流量吗?
我使用了 apache bench,大概运行了 4-5 次,向服务器发出了大约 100K 的请求。
我尝试在 VPS 上进行测试,结果接近每秒 10K 的请求,这是一个simple 'hello world' servlet
. 更不用说调用 membase 了。
我的 VPS 是 2 x Intel Xeon X5570,四核“Nehalem”架构。
注意:我不是 java 专家,也不是 tomcat 专家,这是默认设置。
还有其他人可以处理如此高的流量吗?
我使用了 apache bench,大概运行了 4-5 次,向服务器发出了大约 100K 的请求。
打开 NIO(非阻塞 IO)。默认情况下未启用此功能。如果没有 NIO,每个 HTTP 连接都由单个线程处理,并且限制取决于可用线程的数量。使用 NIO,单个线程可以处理多个 HTTP 连接,并且限制取决于可用的堆内存量。使用大约 2GB 的空间,您最多可以连接 20K。
开启 NIO 就是将Tomcatprotocol
中元素的属性更改为.<Connector>
/conf/server.xml
"org.apache.coyote.http11.Http11NioProtocol"
<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol"
port="80"
redirectPort="8443"
connectionTimeout="20000"
compression="on" />