Php 出于长轮询目的检查mysql
我试图在我的站点上做一些长时间的轮询,以通知用户收到的邮件。我会将mysql用于数据库目的。如果表有更新,检查mysql安全吗?这会不会导致网站在不断寻找更新时速度变慢?你怎么检查mysql是否更新了 代码应该是这样的Php 出于长轮询目的检查mysql,php,jquery,ajax,performance,long-polling,Php,Jquery,Ajax,Performance,Long Polling,我试图在我的站点上做一些长时间的轮询,以通知用户收到的邮件。我会将mysql用于数据库目的。如果表有更新,检查mysql安全吗?这会不会导致网站在不断寻找更新时速度变慢?你怎么检查mysql是否更新了 代码应该是这样的 while($currentTime <= $lastTime){ usleep(10000) clearstatcache(); $sql = mysql_query("SELECT time FROM timestamp WHERE $cu
while($currentTime <= $lastTime){
usleep(10000)
clearstatcache();
$sql = mysql_query("SELECT time FROM timestamp WHERE $currentTime = timestamp");
$row = mysql_fetch_array($sql);
$currentTime = $row['time'];
}
所以基本上,它会一直运行,直到数据库中有一个新的时间戳,但是如果它让服务器每10秒查看一次我的数据库,这是否有效
谢谢我强烈建议为此使用cron作业或计划任务。 或计划任务(如果您在windows上)
如果您不阻止,您建议的方法将超时,并保持进程繁忙。而cron作业就是针对这类内容的。您可以使用AJAX,让客户端每隔X秒轮询一次服务器。但你可以更详细地描述你的问题
另一种可能是cron,但您必须提供更多信息。PHP在服务器端执行。这意味着这个while循环将阻止向用户显示任何内容,直到实际发生更新为止。将网页加载给用户后,您需要经常使用ajax轮询数据库。