ajax content download,关于ajax的content-download时间过慢问题的解决方案与思考

前言:

作前端架构好久好久了,常常到我这里都是些棘手的问题,以前没有养成很好的记录问题的习惯,之后会努力成文,积累。

因而今天就有个这篇文章。关于ajax的content-download时间过慢问题的解决与思考

事件背景:

开发人员反馈给我一个bug,ajax相应速度很慢,通过定位,速度慢的缘由在于,content-download时间过长,在chrome中有2s+的延迟,后证明在咱们的手机客户端里也有这一延迟。截图以下:

8bd867cf79b389ff9ce5a0b7413b344f.png

过程分析:

1.定位缘由:

首先,看到这一延迟,第一反应这不是前端bug,并反馈给后端同窗。but,经过后端定位发现接口反馈时间很是迅速,翻阅国外文献事实证实,这是因为浏览器事件不标准引发的bug。

2.bug分析:

经过对开发同窗的沟通,我发现bug有两个特色,第一,这一延迟只存在须要上拉加载而引发ajax请求的状况下,且统一环境和浏览器下延迟时间类似,都在2-3s之间。

第二,部分上拉加载的组件虽然也触发ajax,但并未有延迟。

因而开始了前端,缘由的定位,首先找想通点:因为咱们的项目架构设计,所有的上拉加载都是由一个基础组件pagger 完成的,其部分代码如图所示,原理是经过浏览器的scroll事件和resize事件不停的去检测组件是否在可视区域中,若是是则触发hasMore函数。

718fd1b13a55c07cd59128c5e13f8edf.png

其次,查看出现延迟问题的业务页面和不出现延迟的业务页面对这一组件的调用区别。

经过对比,也没有发现两个组件有何不一样。(故这一奥秘,有兴趣的同窗能够联系我一块儿讨论。。。。。我能够把源码发给你)

通过屡次的重现问题,明显看到在pc的chrome,使用touch模式延迟偶尔消失,而使用mousewheel延迟又出现。故将问题定位到mousewheel事件 和其相近对应的 scroll事件中。

bug解决:

结合上诉缘由并经过查看的几个帖子讨论,得出以下结论:

想要知道具体的解决方案,请关注个人公众号哦~回复 “content-download”获取原文哟

公众号

66962037c54441cfb5dbd7bd.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值