如何在调用servlet之前使jetty缓冲所有请求体

时间:2016-12-27 02:25:26

标签: jetty

我的应用程序具有非常高的CPU负载平均值,原因是jetty启动大量线程来处理请求,并且可能阻塞数据,当数据准备好时,许多线程变得可运行。我想让jetty等待所有数据读取,然后启动线程来调用servlet,在这种情况下,servlet永远不会被阻塞。

有可能吗?

1 个答案:

答案 0 :(得分:1)

不可能。

Jetty需要一个线程来读取请求内容主体本身(对于诸如mime multitpart,表单参数等),或者使用该线程分派到您的Web服务器以便您的Servlet读取请求内容主体。

然后还有Async I / O(在Servlet 3.1中引入)的附加功能,它允许你编写一个Servlet,当它可以读取或写入套接字时只使用一个线程,让线程回退到ThreadPool如果两者都不能完成。