由于请求体处理,我看到一个CPU消耗高于预期的问题。我的简单应用程序是使用vertx构建的。它接受POST请求,断言主体长度与内容长度标头匹配。这个应用程序正在使用一个司机对2个HTTP操作进行基准测试。第一个发送1k,第二个发送8k。每千米利斯一次。身体只是短信而已。
在基准测试期间,我发现堆栈显示多个线程处于相同的方法中
io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder.parseBodyAttributes

为了进一步研究,我将JFR附加到服务器进程并重新运行基准测试。JFR显示Netty方法parseBodyAttributes占抽样方法的93.5%。
HTOP显示两个核心几乎固定在100%。

以前见过这样的方法吗?
发布于 2017-04-07 11:27:34
返回并检查加载驱动程序配置,显示与初始注释中提供的字节数不同的字节数。而不是1k,是1024k和8192 K。这开始解释多部分/表单数据内容的解析活动级别。
https://stackoverflow.com/questions/43235826
复制相似问题