关于页面优化一直是一个让人头痛的问题,除了修正那些不负责任的代码外,要考虑的因素还有很多。系统优化,我觉得就好比医生治病,你必须准确的找到病因,手起刀落,干净利索。今天就遇到了一个重症患者。
问题描述
之前做了一个综合展示页面,这个页面布局就想一个桌子,上面摆满了,水果,青菜,大鱼大肉,还有碗筷刀叉,总之东西很多,所以页面显示很慢。打开页面会有10s左右的卡死状态。老大让我解决这个问题。
问题分析
首先。浏览器F12查看请求量,除去权限控制,最大请求个数大概 十几个, 而且,当时的开发者为了解决初始化慢的问题,把绝大多数请求都放到 js 里,所以 页面初始化完毕之后, js 还在不停的向后台请求数据,造成了页面卡住的现象。
然后逐一去看这些请求,除了自己写查库等基本操作,还有从之前写接口获取的数据,还有从三方支持的接口获取的数据。
分析日志,并没有耗时特别长的sql。
最后归纳一下分析出来的问题
- 请求数量太多
- 原接口无用数据太多
- 三方接口效率低