我需要为我的网站添加"实时"元素。基本上,我需要检测存储在SQL Server表中的"更改",并在发生更改时更新UI的各个部分。
目前我是通过轮询来实现这一点的。每3秒钟我向服务器发送一个ajax请求,以查找任何新的更改-然后将它们返回并进行处理。虽然它能正常工作,但我并不喜欢它-因为对于每个浏览器,我都会频繁地发出这些请求,服务器总是忙于处理这些请求。简而言之,这种方法的扩展性不太好。
有没有什么巧妙的替代方案可以避免轮询造成的开销呢?
编辑
为了完整起见,我更新一下我们最终采用的解决方案-SignalR。它是来自Microsoft的开源程序库。它越来越受欢迎,我可以大力推荐这个方案,或者我们也看了一下WebSync。