服务器网站第一次打开很慢,Http请求第一次慢,等待时间太长

我在Android应用程序中使用Apache DefaultHttpClient向Web服务器发出获取请求(URL无关紧要,现象出现在不同的服务器/网站上)。使用HTC Desire与3G网络的第一次请求需要几秒钟(> 4秒),接下来的时间大概只有0.5秒。如果我在进行下一个请求之前等待超过15秒,则下一个请求再次需要几秒钟。 请求使用HTTP1.1,服务器时间不是问题。 DNS查找也不是问题,因为我也尝试使用IP。Http请求第一次慢,等待时间太长

对我来说,它看起来像是在Apache框架中的一些连接超时设置,或者是我的HTC设备将网络接口置于睡眠状态(如果这样做的话)。

编码是非常简单的,它看起来像这样:

HttpGet get = new HttpGet(uri);

long startTimeMillisRequest = System.currentTimeMillis();

HttpResponse response = client.execute(get);

long endTimeMillisRequest = System.currentTimeMillis();

没有人有原因的线索或遇到同样的事情吗? 我已经把它放到一个AsyncTask中,但我仍然想知道为什么它这么慢。

感谢, 马丁

2011-03-01

hoffimar

+1

您可以使用tcpdump捕获数据包并验证数据包的发送和接收时间戳,以查看从服务器获取响应所需的确切时间,而不是使用System.currentTimeMillis()来测量开始和结束时间。 –

2011-03-01 12:27:59

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值