DNS查找和Chrome上的初始连接之间(而不是FF)之间的AJAX查询奇怪的延迟是什么?

标签 ajax performance google-chrome firefox flask

我的客户端上有一个AJAX查询,该查询将两个参数传递给服务器:

var url = window.location.origin + "/instanceStats"            
$.getJSON(url, { 'unit' : unit, "stat" : stat }, function(data) {
    instanceData[key] = data;
    var count = showInstanceStats(targetElement, unit, stat, limiter);
});

服务器本身是一个非常简单的Python Flask应用程序。在特定的URL上,它从查询中获取“unit”和“stat”参数,以确定CSV文件的名称以及该文件中的行,获取该行,然后将数据发送回以JSON格式格式化的客户端(大致1KB)。

这是一件有趣的事情:当我测量返回数据所花费的时间时,我发现一些查询速度很快(在20到40毫秒之间),而某些查询速度很慢(在320到350毫秒之间)。更改“stat”参数(即在CSV中选择另一行)似乎没有任何影响。快速和慢速查询通常会来回切换(即,所有偶数查询都是快速的,所有奇数查询都是慢速的)。 Python服务器本身为每个查询报告的时间大致相同。

AJAX本身似乎也没有任何影响,因为我可以将JS中构造的url粘贴到浏览器中,并获得相同的行为。以下是两个后续查询的一些测量结果:

快速:http://i.imgur.com/VQ7qopd.png

慢:http://i.imgur.com/YuG0ROM.png

这似乎是特定于Chrome的,因为我已经在Firefox上进行过尝试,并且每次进行相同的实验都会产生大致相同的查询时间(介于30到50毫秒之间)。不幸的是,我想同时在Chrome和Firefox上进行部署。

是什么导致了此行为,我该如何解决?

最佳答案

我也遇到了这个问题。它似乎仅在使用localhost时发生。如果使用127.0.0.1(或什至是计算机名称),则不会有额外的延迟。

关于DNS查找和Chrome上的初始连接之间(而不是FF)之间的AJAX查询奇怪的延迟是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28762402/

相关文章:

javascript - 如何在ajax javascript中获取数组(不是json)的值

html - 由于文本渲染,日文字符在 Chrome 中显示为方框 : optimizelegibility;

javascript - 为 chrome 开发者工具添加功能

javascript - Ajax 只加载第一条记录?

python - scrapy 爬行蜘蛛 ajax 分页

c++ - C++-代码优化

android - FragmentPagerAdapter 和 FragmentStatePagerAdapter

postgresql - postgresql/Vacuum 中大量的活/死元组不起作用

html - 谷歌浏览器 v.30 : CSS overflow attribute on input elements cause other inputs to jump on focus state

php - 评论系统 - 创建帖子并将其显示在页面上-1