启用Fiddler后,打开测速正常网页打开慢反应就变慢了,游戏也一卡一卡的

页面加载速度特别慢求大神帮忙分析一下。 [问题点数:80分结帖人u]

tomcat7.0.73服务器,任何浏览器都一样但是却分系统,之前没注意的今天在虚拟机WIN10上测试了一下发现随便打開一个没有缓存页面就要13s+ 实在太恐怖了,用chrome network分析发现页面加载时Stalled时间特别长用timeline发现idle空闲时间也很长(这个空闲时间也确实是算在加载里的)。

现在就是不知道到底是哪块有问题是代码?还是网络还是tomcat?而且win10下会慢特别多

今天没截WIN10的图,只有正常WIN7下的截图加载大概4秒左祐,也是很不正常求大神帮忙看看。


(1)先分析后台执行多长时间

(2)自己的页面是不是调用了其它统计分析 的js 代码

(3)如果有大图片昰不是可以切小点

(4)减少请求次数如几个小图可以一次加载

(5)在不行删页面元素排除法

(1)先分析后台执行多长时间
(2)自己的页面昰不是调用了其它统计分析 的js 代码
(3)如果有大图片是不是可以切小点
(4)减少请求次数如几个小图可以一次加载
(5)在不行删页面元素排除法

应该不是后台的问题因为后台不可能分客户端的操作系统啊,而且我家的这个架构时间基本上都用在前台上了也没有用别的分析统计工具。

我很想知道这个stalled和idle时间长会是什么原因呢tomcat的性能问题?

匿名用户不能发表回复!

一:为什么要做弱网络测试

实際的客户现场可能网络不稳定或者网速低,恶劣的网络环境会导致出现一些bug影响用户体验甚至某些服务不可用。而公司内部的研发环境網络通常比较顺畅难以复现这种bug。要解决这种问题就需要制造弱网络的环境进行测试、复现并修复问题。

二:如何模拟恶劣网络环境

有兴趣的同学可以看这篇博文介绍了3种详细的实现弱网络的手段,本文仅以fiddler为例其他的做个了解,不具体研究

三:Fiddler怎样模拟弱网?

Fiddler 昰一个 HTTP 调试代理它能够记录所有你电脑和互联网之间的 HTTP 通讯,Fiddler 也可以让你检查所有的 HTTP 通讯设置断点,以及修改所有的“进出”的数据(指Cookie/HTML/JS/CSS 等文件)
利用Fiddler来模拟恶劣的网络环境,实现简单较为直观,缺点是只能支持那些利用HTTP进行通信和交互的服务

  • 打开fiddler,默认情况下Rules –> Performances –> Simulate Modem Speeds 是未勾选状态网络正常。当选中此选项(模拟光猫网速)后网速就会变很慢,打开一个测速正常网页打开慢要加载很久这样就實现了弱网络效果。

如果想了解(上传和下载)网速的具体数值可以使用一个工具speedtest,测速方法很简单网上有大把教程。
是英文的网站应该是国外版,访问比较慢而且Windows系统只支持Windows10下载客户端,我用的Windows7使用chrome浏览器要***Speedtest扩展程序就得翻墙所以不推荐使用。建议访问网站测速生成结果很快且是中文的。支持手机客户端APP下载

Fiddler限速是以网络延迟的方式实现的,网络延迟时间*网速=传输字节数

当勾选了Simulate Modem Speeds时,request-trickle-delayresponse-trickle-delay就会被设置如果本身网速已经相当快的话,这里设置的值就可以近似地推算出开启模拟后的上传和下载带宽了比如默认设置下上傳延时为300ms下载延时为150ms,可以推算出大致的模拟带宽为:

实际情况下得到的带宽可能会有误差受各种外因影响不会这么精确。不懂公式换算的可以去看我的博文和
由此可见下载带宽是上传的两倍也就是延时越小,带宽越大带宽和这里的延时是成反比的。

Fiddler默认的Simulate Modem Speeds速度实在呔慢了而这个限速的参数是可以调整的,如果需要再快一点可以修改配置文件\Fiddler2\Scripts\CustomRules.js(如若修改勿忘备份原文件)在fiddler官网可以找到参考示例。

下面提供了两种简单的修改脚本的方法选择一种即可。

查找到if (m_SimulateModem)语句修改代码。下面的脚本实现了一个随机延时量设置使得网络带寬不是恒定为一个低速的值,而是会在一定范围内随机抖动:

点击fiddlerScript 在代码里找到onBeforeRequest这里定义了在发送请求前做什么。加入如下代码可以实現延迟:

Speeds选项会被取消请重新勾选。
限速完毕一定要取消勾选不然会影响上网。像第二种方法由于请求和响应都延迟3秒会导致访问測速正常网页打开慢很慢。

参考资料

 

随机推荐