ios - 测量建立tcp连接所消耗的时间,基于HTTP的API请求,改进网络IO的时间消耗也是一种用户体验的提升。

 小东东5201314 发布于 2022-11-05 01:53

但凡做移动开发的人,必然都会反复提到用户体验,在网络上消耗很长时间的应用也属于 不好的用户体验。测量用户真实的在网络上消耗掉的时间是一个很重要的事情

记录设备HTTP请求时,建立tcp连接消耗的时间,服务端响应数据时用了多长时间接收了 多少数据,设备所在地域、时间、运营商等来分析用户的网络情况,借此数据才能知道哪 些地方需要改进。

通常我们最直接的感受到服务器响应请求的时间,是由几个部分组成:

  • TCP协议三次握手,也就是socket建立连接的时间。
  • 服务端程序的执行时间,例如Django的代码执行和MySQL的查询等。
  • 数据接收,这个不难理解,就是服务器输出的内容到达设备的时间。

以上三个部分当中,TCP连接的所消耗的时间是也是一个非常重要的指标。

ASIHTTPRequest提供了测量连接时间的能力,因为它是基于CFNetworkNSURLConnection就没有这种能力了。所以想要对ASIHTTPRequest有经验的开发者提 示如何Hook建立连接成功的时候。

2 个回答
  • 1.简单直接的话有第三方网站可以帮忙监测,如https://rpm.newrelic.com(具体怎么配置可以参考网站的教程)

    2.如果要自己检测,可以再请求开始的代理纪录下开始时间,在请求返回值/failed 来计算和开始时间的时间差。

    2022-11-12 01:56 回答
  • 最简单就是用Socket建立TCP链接,看看要花多少时间,HTTP是应用层协议,它也要使用TCP实现。如果你没用过Socket,就需要补一补了。搜索「Linux Socket编程」,这种底层技术基本是通用的。

    2022-11-12 01:56 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有