当服务器上的数据更新时自动更新 Web 应用程序
是否可以将更新(或自动响应)从服务器发送到网络应用程序?
我有一个服务器每 5 分钟更新一次数据(有时是随机的)。我想更新正在运行的 WEB 应用程序上的新数据,而不从浏览器向服务器发出请求。
现在我每 5 分钟执行一次 ajax 请求,以便我可以更新最新数据。但有时没有数据更新。此外,有时数据会在例如更新。上午 9:01,更新执行时间为:上午 9:05。我想做的是:当服务器上的数据更新时立即更新网络应用程序。
关于如何实现这一点有什么想法吗?我可以使用任何技术/语言或执行此操作所需的任何内容。
问候
Is it possible to send update (or automatic response) from a SERVER to a WEB APPLICATION?
I have a SERVER that updates data every 5 min (sometimes random). I want to update the new data on a running WEB APPLICATION without making a request from brower to server.
Right now I execute an ajax request every 5min so that I can update the latest data. But sometimes no data is updated. Also, sometimes the data gets updated at eg. 9:01 am and the update executes at eg. 9:05am. What i would like to do is: immediately update web application when the data gets updated on the server.
Any ideas on how this could be implemented? I can use any technology/language or anything that is required to do this.
Regards
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您正在描述 HTTP 服务器推送技术。实现它的方法有很多,但了解它的名称应该有助于您入门。
You’re describing HTTP server push technology. There are many ways to implement it, but knowing what it’s called should help you get started.
我相信您想使用此模型: http://en.wikipedia.org/wiki/ Comet_(编程)
I believe you want to use this model: http://en.wikipedia.org/wiki/Comet_(programming)
客户端与服务器的关系不能颠倒。浏览器必须是发起任何通信的浏览器。
但是,您可以很容易地以短时间间隔轮询服务器来询问“有什么变化吗?”。然后,根据结果,您可以通过第二次 AJAX 调用刷新全部或部分数据。
The client-server relationship cannot be reversed. The browser has to be the one to initiate any communication.
However, you can quite easily poll the server at short interval to ask "has anything changed?". Then, according to the result, you could refresh all or part of the data with a second AJAX call.
您可以尝试 SQL Server 通知,但您必须围绕它执行大量业务逻辑。
You can try SQL server notification, but you have to do a lot of business logic around it.