私は自分のサイトで受信メールをユーザーに通知するために長いポーリングをしようとしています。私はデータベースの目的のためにmysqlを使用しています。テーブルへの更新があれば、mysqlをチェックするのは安全でしょうか?これにより、サイトが絶えず更新を探すため、サイトの速度が低下しますか? mysqlが更新されているかどうかチェックする方法は?長いポーリングの目的でmysqlをチェックする
コードは、この
while($currentTime <= $lastTime){
usleep(10000)
clearstatcache();
$sql = mysql_query("SELECT time FROM timestamp WHERE $currentTime = timestamp");
$row = mysql_fetch_array($sql);
$currentTime = $row['time'];
}
ようになりますので、基本的に、それはtheresのまで、実行中のデータベースに新しいタイムスタンプを保持しますが、これはその私のデータベースにすべての10秒をサーバーの表情を作る場所に効率的ですか?
おかげ
PHPはサーバサイドを実行します。つまり、このwhileループは、実際に更新が行われるまで何も表示されないようにします。ウェブページをユーザにロードした後で、頻繁にデータベースをポーリングするには、ajaxを使用する必要があります。 – Julien