在jQuery中进行轮询是否昂贵,还有替代方案吗?

DJ_*_*DJ_ 1 javascript php jquery

我有几个用户同时访问我的页面,每个客户端轮询(使用setInverval)另一个PHP脚本,从数据库读取值并打印它.

setInterval( "printData();", 300 );
Run Code Online (Sandbox Code Playgroud)

我对jQuery和javascript相对较新,而且我对持续运行这个php脚本并不断进行数据库查询的可行性持怀疑态度.

有人可以平息我的神经或提供我现有方法的替代方案吗?

Nie*_*sol 6

你每0.3秒更新一次 - 每秒超过3次.方式太多了.根据需要的平滑程度,最多每5秒更新一次(5000).

另外,只是为了让它快一点,只需删除引号和括号:

setInterval(printData,5000);
Run Code Online (Sandbox Code Playgroud)

  • 值得一提的是,`setInterval`可能不是最好的选择.最好在AJAX调用的成功处理程序中递归使用`setTimeout`. (4认同)