您的位置:首页 > 运维架构 > Linux

linux主机上打开流慢

2016-08-10 15:24 288 查看
2016-08-10

问题描述:

有段代码是访问一个接口获取返回的json数据的。在windows开发电脑上很快,在linux上就很慢

long start = System.currentTimeMillis();
URL url = new URL(sendurl);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
connection.setUseCaches(false);
connection.setInstanceFollowRedirects(true);
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
long end1 = System.currentTimeMillis();
System.out.println("--打开网页:"+(end1 - start)+"毫秒");
// connection.connect();
//DataOutputStream out = new DataOutputStream(connection.getOutputStream());
//          PrintWriter out = new PrintWriter(new OutputStreamWriter(connection.getOutputStream(),"utf-8"));
PrintWriter out = new PrintWriter(connection.getOutputStream());
long end3 = System.currentTimeMillis();
System.out.println("---打开流:运行时间:"+(end3 - end1)+"毫秒");  //5113毫秒
out.write(param);
out.flush();
out.close();
long end = System.currentTimeMillis();
System.out.println("--- 发送参数:运行时间:"+(end - end3)+"毫秒"); //5108毫秒
long start2 = System.currentTimeMillis();
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream(),"utf-8"));
String lines = null;
StringBuffer sb = new StringBuffer("");
while ((lines = reader.readLine()) != null) {
//lines = new String(lines.getBytes(), "utf-8");
//System.out.println(lines);
sb.append(lines);
}
result = sb.toString();
long end2 = System.currentTimeMillis();
System.out.println("----读取返回流:运行时间:"+(end2 - start2)+"毫秒");
reader.close();


windows上

--打开网页:0毫秒
---打开流:运行时间:234毫秒
--- 发送参数:运行时间:0毫秒
----读取返回流:运行时间:250毫秒


在linux主机上

--打开网页:0毫秒
---打开流:运行时间:5107毫秒
--- 发送参数:运行时间:1毫秒
----读取返回流:运行时间:203毫秒


linux主机上第二次刷新的时候又飞快的。下拉加载下一页的时候获取json也飞快的!

难道是网络原因么?5秒也太难以接受了!什么鬼?

2017年2月8日14:25:14

一年过去了,终于知道是什么原因了!之所以是5秒,因为DNS解析。在/etc/hosts里配上一条问题解决。很多时候真的是经验问题。之前处理微信网页授权也是同样的问题。访问超级慢5秒左右。记录一下,也希望能帮到其他人。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux url