繁体   English   中英

Servlet中的流刷新-会提高Tomcat服务器端的性能吗?

[英]Stream flushing in servlet - does it improve tomcat server side performance?

我正在查看一个使用KXML2序列化程序的servlet。

我已经看到以前的开发人员经常调用flush() ...除了将数据更快地发送到客户端之外,对实际的服务器和tomcat有什么影响?

不使用冲洗时,CPU使用率/负载会更少吗?

我已经使用VisualVM进行了基准测试/分析,并发现我的代码无需刷新即可运行得更快。

最后,赞成/反对我应该担心的任何事情...

除了将数据更快地发送到客户端之外,对实际的服务器和tomcat有什么影响?

这使他们做更多的工作。

不使用冲洗时,CPU使用率/负载会更少吗?

是的,是的。 flush()本身会占用CPU周期,并可能导致网络延迟。 确实没有多大意义,因为在获得完整响应之前,客户端无法做很多事情。 如果响应不是分块的或固定长度的,则Tomcat必须无论如何都要对其进行缓冲以获取Content-length:在发送之前,无论如何,在这种情况下没有任何优势。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM