Tomcat使用Jersey Jax-RS在单个服务器上执行15K req /秒

我尝试在VPS上测试一些东西,并且每秒接近10K请求,这是一个simple 'hello world' servlet ,更不用说调用membase了。

我的VPS是2 x Intel Xeon X5570,四核“Nehalem”架构。

注意:我不是java专家,也不是tomcat专家,这是默认设置。

有没有其他人可以处理如此高流量的问题?

我使用了apache bench,我运行了大概4-5次,向服务器做了大约100K的请求。

原创: 如何在tomcat上处理2000多个请求/秒?

打开NIO(非阻塞IO)。 默认情况下,此function未启用。 如果没有NIO,每个HTTP连接都由单个线程处理,并且限制取决于可用线程的数量。 使用NIO,单个线程可以处理多个HTTP连接,并且限制取决于可用的堆内存量。 大约2GB,你可以达到20K连接。

打开NIO是将Tomcat的/conf/server.xml 元素的protocol属性更改为"org.apache.coyote.http11.Http11NioProtocol"