Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“$.ajax”中的请求计时有时超过1秒,有时超过30ms_Ajax_Apache_Xampp_Response_Delayed Execution - Fatal编程技术网

“$.ajax”中的请求计时有时超过1秒,有时超过30ms

“$.ajax”中的请求计时有时超过1秒,有时超过30ms,ajax,apache,xampp,response,delayed-execution,Ajax,Apache,Xampp,Response,Delayed Execution,我在Windows7上使用的是xampp版本1.7.7。我正在尝试这样做,当您单击save image时,它会将信息发送到后台的save_record.php。我这样做是因为 $.ajax({ url: 'save_record.php', data: values.join("&"), success: function(data) { //document.write(data); } });

我在Windows7上使用的是xampp版本1.7.7。我正在尝试这样做,当您单击save image时,它会将信息发送到后台的save_record.php。我这样做是因为

$.ajax({
      url: 'save_record.php',
      data: values.join("&"),
      success: function(data) {
            //document.write(data);
          }
    });
这显然不是问题所在。问题是反应很慢,我找不到原因。下面我添加了从chrome speed tracer收到的数据。Firebug还显示了1秒以上的所有响应。它们以1055毫秒或1035毫秒的格式出现,这让我觉得它在某个地方卡住了一秒钟。如果这还不够奇怪的话,它会在某个时候开始快速地发出请求(30-50ms),这对我来说是一个非常有用的应用程序。否则,1秒钟的延迟会使它死亡。有一次我杀死了process explorer.exe并将其添加为新任务,它成功了。但下一次它没有。我重新启动电脑-这是一秒钟。。。当我打这个问题的时候,它开始做那些快速的请求。一旦它开始快速运行,一切都很好,但当我启动xampp(或从睡眠中打开笔记本电脑)时,它通常很慢(1秒+)。一段时间后(通常是5-10分钟),这是一个有点自我解决的问题,但这很烦人,也很奇怪,因为为什么会发生这种情况:)希望我对这个问题很清楚

另外,我进行了测试,从第一个php标记到最后一个标记的时间差约为20毫秒,所以我假设不是php缓存出了问题

p.S.2.我会提供所需的任何其他数据,只是不确定看什么:)只要说出它的名字

更新:添加了Chrome的网络选项卡

更新:重新安装xampp后,问题仍然存在:


你能为需要一秒钟以上时间的请求拍摄一张chrome developer tool的“网络>计时”选项卡的屏幕截图并与他人分享吗。例如


您必须分析该选项卡中提到的每个操作所花费的时间。还可以从speed tracer查看事件跟踪以获取更多信息。

尝试将
save\u record.php
的内容更改为
,然后查看发生了什么。我怀疑这是服务器端处理save_record操作的某种延迟(可能是DB是瓶颈,可能是文件I/O等)。

save_record.php,
如果你做任何数据库操作,你写了什么代码?这个操作可能需要很多时间。你能给我提供“save_record.php”的代码吗我可以优化响应,也可以解决您的查询,在
C:\Windows\System32\drivers\etc\hosts
中取消对行
127.0.0.1 localhost
的注释,从而解决了问题。速度真是难以置信地加快了。我在他的书中找到了这个建议。实际上,甚至Chrome打开其他页面的速度也提高了很多,o.o

按照要求添加了图像,但其中似乎没有那么多信息,至少你从中看不出多少。还有,你能更具体地说你想看什么活动吗?我想这可能是客户端的问题,这就是为什么要求你上传它的原因。现在,它显示问题恰恰在服务器端。我猜第一个请求需要时间,从下一个请求开始,响应速度更快。你能提供一些关于你在服务器端具体做什么的信息吗。是否涉及任何数据库查询。如果是这样的话,你能检查第一次和下一个连续请求所花费的时间吗?我想第一个请求确实得到了计算,连续请求使用了前一个/第一个请求的缓存结果。昨晚我在编程时,所有请求都是1秒+几毫秒(20…150)。有时,是的,第一次需要更长的时间,甚至可能长达3秒左右,但其他时间基本上停留在1000+20…150毫秒。看起来只是增加了一秒钟。我安装的是xampp,除了在php.ini中启用xdebug之外,我没有对它做任何更改。但是,正如我所说的,有一段时间,每件事情都很完美,处理事情所需的时间只有20…150毫秒。此外,它会不时修复,然后返回到处理页面的长版本。我唯一的目的是网站的速度,这可以在本地主机上实现,这是完全破坏它。有没有办法检查某些日志(如apache或其他日志)延迟时间的原因?例如,当我写问题的第一个版本时,它自己修复了。另一方面,今天我花了两个小时编程,但它没有修复。我不记得在xdebug尚未启用时是否存在此问题。我到家后将尝试禁用它。你能看看这个吗?这个刚刚检查过-即使使用
它也需要1秒钟。请阅读darvids0n的答案并在下面进行评论。我认为这完全排除了数据库/编码问题的任何影响:)你让我的日子过得很愉快!从ajax请求的6秒到600毫秒