- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在通过 javascript 和开发人员控制台测试调用的延迟。
在 JS 中,只需添加开始时间变量即可完成测量,例如:
var start_execution=Math.floor( new Date().getTime() );
// - Call a URL asynchronously
element = doc.createElement("script");
element.src = request_url;
doc.getElementsByTagName("script")[0].parentNode.appendChild(element);
//In response of the call initialize end time and call function to compute latency
var end_execution=Math.floor( new Date().getTime() );
// function call to generate latency
calculateLatency();
function calculateLatency(){
var latency= end_execution-start_execution;
}
如果在延迟数字与浏览器的开发人员控制台/网络面板内联的情况下单独运行,该方法工作正常。但在实际网站上有很多异步内容,JS 测量的数字高达 5 倍。
通过 js 计算的一个 1000ms 延迟在网络面板中显示为 200ms。
这种行为非常频繁,差异不一。
我怀疑有某种处理异步处理的浏览器队列,如果在高峰负载的情况下,请求/响应会卡在队列中。
我正在探索的选项是性能 http://www.w3.org/TR/resource-timing ,但此处浏览器支持有限。
我正在寻找有关在 javascript 中计算实际延迟的行为和能力的一些解释(与网络面板中显示的相同)。还建议如何有效地使用 JS 截止时间进行网络调用,因为在这种情况下膨胀的值可能会导致意外行为。
我为什么要这样做:为不执行的网络调用设置超时,但当延迟的实际原因是浏览器处理开销时,使用 setTimeOut 和拒绝调用是不公平的。
最佳答案
您的建议完全正确。
JS中几乎所有的东西都是由事件驱动的(除了某些情况,比如页面解析过程)。任何浏览器的每个窗口都有一个线程来处理 javascript 事件,每个事件处理程序都会随之执行,并且每个事件(包括传播/冒泡和默认值)都将在处理下一个事件之前被完全处理。
有关更多信息,请参阅 this tutorial
关于有效使用事件队列的建议,有一些建议:
XMLHttpRequest
alert
对话框进行调试,因为它们可能会完全改变您的程序逻辑。关于javascript - 通过 javascript 与开发人员控制台测量时的不同延迟时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33387248/
是否有用于手动测试的代码覆盖工具?比如我新写了30行代码,编译,然后运行,有什么办法可以快速验证这30行都运行了吗? 另外,后来,在我将代码 checkin 正式版本后,有什么方法可以验证测试部门在进
老实说,这是一个家庭作业问题,但我已经浪费了好几个小时,而且无法正确解决。它返回错误数量的结果或错误的数据: 我需要选择参与指导电影和/或在电影中表演的每个人以及他们所做的次数,如果至少 5 次。 有
我正在尝试测试 MacOS 的应用内购买。输入测试用户凭据后,App Store 提示:“当前收据无效或 ds 人员 ID 不匹配。”并且购买失败。 最佳答案 我尝试了很多方法来解决这个问题。 Get
我正在为 Jenkins 使用 ActiveDirectory 插件,因此用户必须使用他们的凭据登录到 Jenkins。然后用户在 Jenkins 中被称为 joe.doe,这很完美。 当同一个人 c
如何从 Infopath 人员/组选取器检索电子邮件地址?当我将人员/组选取器添加到 infopath 表单时,我只得到 3 个字段 DisplayName、AccountId、AccountType
在 Snow Leopard 中,可以在 iCal 事件中显示空闲/忙碌时间。我搜索了 CalStore.framework 的 header ,但找不到任何描述该字段的属性。如何检索日历事件的忙/闲
是否有人成功地从专门针对 SharePoint 2013 的新建或编辑表单中获取用户(个人或组)字段的值? 我已经尝试了通过搜索互联网找到的所有解决方案以及我自己能想到的所有解决方案,所有结果都为空白
所以我需要将一个 Twitter 帐户添加到 ABRecordRef 中。然而,最快的方法似乎是获取社交资料属性的多值引用,创建它的可变版本,查找它是否有 Twitter 条目,如果已经有,则创建
我正在尝试将使用 Tomcat(最初是 5.5,但可以与 7 一起使用)在 MyEclipse 中开发的应用程序部署到我们的演示服务器 (Sun Java Web Server 7)。不幸的是,所有设
我是一名优秀的程序员,十分优秀!