【go】如果打开网页的时候白屏10秒才显示出页面,如果进行排查。
请说一下简单易行的测试方法或思路
回答
方法一
断点调试法,下断点从入口一步步追踪下去,比如入口第一行秒回 则 下面行,二分查找速度 快些,主观判断哪里慢10秒很容易查出来,这种前提是要下要几次断点
方法二
用xhprof xdebug 等侵入式分析工具
如果可以用 Chrome devtools 的话,可以用 Performance 标签看一下整个载入过程各个动作的耗时。
先看看是哪段代码导致的,再做针对性的 Debug。
一开始就上调试代码等于大海捞针。
通常认为白屏时间就是从浏览器发出请求直到浏览器开始渲染body
标签(页面出现元素)所花费的时间。
我最常用的方法是使用performance.timing
对象,计算花费的时间。具体使用方法,只要阅览文档就能够掌握了。
var t = performance.timing; // 建立连接花费的时间
var conntime = t.connectEnd - t.connectStart
// 发出请求到服务器响应花费的时间
var reqsresstime = t.responseStart - t.requestStart
// 接收全部响应所花费的时间
var ressresetime = t.responseEnd - t.responseStart
// 从建立连接到页面加载
var pageloadtime = t.loadEventStart - t.connectStart
// ...
稍作分析,就能知道到底是服务器响应耗时多,还是浏览器加载耗时多。
除此之外,也可以使用浏览器提供的开发者工具进行抓包分析。
@利维坦少女 楼上正解,先看是哪一部分的耗时最大,然后再去打点调试最为有效
以上是 【go】如果打开网页的时候白屏10秒才显示出页面,如果进行排查。 的全部内容, 来源链接: utcz.com/a/104031.html