Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.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
Javascript jquery调用会导致服务器出现问题_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript jquery调用会导致服务器出现问题

Javascript jquery调用会导致服务器出现问题,javascript,jquery,ajax,Javascript,Jquery,Ajax,在多次调用ajax函数后,我注意到大量进程被阻塞,我的网站被阻塞(但它在localhost上运行良好) jquery调用和进程之间的关系是什么? 主机的安全性是谁阻止的 我有很多函数可以自动刷新。如何在不阻塞网站的情况下刷新 在ajax complete内部延迟一段时间后再次调用该函数将是一个更好的主意,并会增加时间延迟。在外部使用setInterval将发送多个连续请求,这可能会由于内存使用过量而中断浏览器 var auto_refresh3 = function () { $.

在多次调用ajax函数后,我注意到大量进程被阻塞,我的网站被阻塞(但它在localhost上运行良好)

jquery调用和进程之间的关系是什么? 主机的安全性是谁阻止的

我有很多函数可以自动刷新。如何在不阻塞网站的情况下刷新



在ajax complete内部延迟一段时间后再次调用该函数将是一个更好的主意,并会增加时间延迟。在外部使用
setInterval
将发送多个连续请求,这可能会由于内存使用过量而中断浏览器

var auto_refresh3 = function () { 
     $.post("tchata2.php",{FID:identif},function (data){
          if($('#newmsg').val()!= data){ 
              $('#newmsg').empty();
              $("#newmsg").append(data);
          } 
          setTimeout(auto_refresh3, 5000);
     }).fail( function(xhr, textStatus, errorThrown) {
         setTimeout(auto_refresh3, 5000);
     });
}

ajax请求太频繁了。它会破坏浏览器。解决方案是什么“我的网站被阻止”=>是浏览器窗口还是为您的网站服务的服务器?服务器阻止我的网站(从我这边)意味着我的窗口,因为有很多请求。解决方案是1)购买更好的服务器2)降低请求频率/提高性能(即返回更少的数据,或在服务器上做更少的工作)3)使用WebSocket(如果适用)4)以上所有问题现在我只有一个小问题:)当我在一个链接中快速点击多次时,它会导致相同的问题,由您的答案解决。我如何解决它?我只打一次电话,只打一次电话,我需要它自己打一次电话5seconds@KhattabMahmoudi这可能是因为ajax是错误的。@KhattabMahmoudi我更新了答案,如果出现错误,使用它将再次调用它,但如果您能够找出错误发生的原因,则会更好。
var auto_refresh3 = function () { 
     $.post("tchata2.php",{FID:identif},function (data){
          if($('#newmsg').val()!= data){ 
              $('#newmsg').empty();
              $("#newmsg").append(data);
          } 
          setTimeout(auto_refresh3, 5000);
     }).fail( function(xhr, textStatus, errorThrown) {
         setTimeout(auto_refresh3, 5000);
     });
}