如何动态更新字段而不刷新和不调用服务器


How to dynamically update field without refresh and without cilling the server?

我很好奇如何动态更新字段而不刷新和不杀死服务器的查询?Stackoverflow有这个功能,当有人回答我们的问题时,它会在页面的顶部显示,但我的问题是:这是基于ajax和Jquery

setInterval();

函数还是有其他方法?我可以想象这个网站每天有多少访问量,如果setInterval()每10秒向服务器发送一次ajax请求,我认为这会杀死服务器。我错了吗,是否有另一种聪明的方法可以节省服务器性能,甚至在这里使用setInterval();提醒用户?在控制台中,我没有看到任何ajax请求正在运行。我错过了什么?如有任何建议或样品,请提前感谢!

您正在寻找的是类似于"push"的技术。有几种方法可以做到这一点,Ajax是最基本的,也是最不受欢迎的,原因您已经提到了。长轮询、服务器发送事件和web套接字是其他方法。

流行的库,如Socket。IO让它变得足够简单,通过选择与浏览器兼容的正确技术来处理浏览器依赖关系。

这个SO回答总结了这些技术,供您入门。或者这篇文章,如果您搜索这些术语,还有更多:长轮询、sse、websockets。