我们已经开始在其中一项测试服务中使用asyncResponse,并且尝试从与进入线程不同的线程中从输入线程中读取输入流中的数据时,我们遇到了竞争条件,即无法读取来自客户端的全部数据。服务器突然关闭了请求。
编辑1
我已启用调试日志,并且发现了以下内容。
所有数据都在我创建的新线程池中读取,除了在传入的码头线程中读取的16K之外。而这16k正是我在全部内容中所缺少的。这种情况有时也会很难复制。
传入线程日志消息
2018-07-02 19:42:07,522 | DEBUG | qtp397146575-263 | rg.eclipse.jetty.http.HttpParser | | filled 16384/16384
新线程池日志消息
2018-07-02 19:42:54,333 | DEBUG | Thread-100 | rg.eclipse.jetty.http.HttpParser | | filled 16384/16384