次のようにハートビートを実装しました
$.ajax({
cache:false,
timeout:8000,
type:"POST",
url:"someurl.php",
data:allFormValues,
error:function(){ alert("some error occurred") },
success:function(response){ //call some functions }
});
そしてサーバー側で
$time = time();
while(!proccessServer() && (time() - $time) < 60 )
{
sleep(5);
}
false が返された場合は単純に関数を呼び出します。ループは 5 秒以上スリープしてからチェックしますが、問題は、これがリソース CPU を消費していることであり、これは 5 人のユーザーがテストしたときだけでした。
この前使ってた
window.setInterval(function(){
//I call a function here
}, 5000);
しかし、多くのリクエストのためにリソースを消費していました
おそらく私のアプリは同時に100Kをオンラインにしていますが、ブラウザの互換性のためにwebsocketsを使用することは考えていません これを解決するために何を提案しますか? どんな助けでも大歓迎です