我在数据库中有一个大表,几乎每秒更新一次。我想每 5 秒查询一次该表以获取最新条目(实时流)。
我无法为每个访问者查询数据库(每 5 秒 ajax 发布请求),因为 mysql 会死。这就是我需要缓存文件的原因。我在文件中写入数据,而不是使用 javascript 的访问者每 5 秒打开/读取/关闭文件。
一切正常,但我在使用 cronjob + sleep 时遇到了麻烦。
在 cpanel 中,我无法设置 5 秒的 cronjobs,这就是为什么我在 5 秒的睡眠中运行 12 个周期的 for()。
for($i = 0; $i <12; $i++){
mysql_query() /// writing in file, etc.
sleep(5);
}
问题是这会将整个服务器冻结 60 秒。不仅cronjob php文件,整个网页都超时了。
我应该怎么办?我做对了吗?