Java Servlet下载性能调优
我有一个应用程序,下载速度很慢,2.3秒下载461KJava Servlet下载性能调优,java,http,servlets,xrebel,Java,Http,Servlets,Xrebel,我有一个应用程序,下载速度很慢,2.3秒下载461K curl ... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 99 462k 99 461k 0 0 191k 0 0:00:02
curl ...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
99 462k 99 461k 0 0 191k 0 0:00:02 0:00:02 --:--:-- 191k
curl: (18) transfer closed with 741 bytes remaining to read
使用XRebel,我能够精确定位热点:
显然,Response.setContentLength
大约需要1.1秒,占总请求时间的46.1%。我想知道为什么设置内容长度会大大增加请求的时间?如果我删除如下设置长度:
Representation representation = new InputRepresentation(is);
representation.setMediaType(MediaType.APPLICATION_OCTET_STREAM);
//representation.setSize(count); <-- commented (I'm using Restlet btw)
表示=新的输入表示(is);
representation.setMediaType(MediaType.APPLICATION\u OCTET\u STREAM);
//表示。设置大小(计数);我认为您需要更深入地了解setContentLength实际执行的代码。