Java Servlet下载性能调优

Java 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

我有一个应用程序,下载速度很慢,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  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实际执行的代码。