在 Ajax 应用程序中实现实时数据推送:学习使用基于套接字的 RIA 技术
2009-11-14 00:00:00 来源:WEB开发网核心提示:这种技术可能会生成大量不必要的流量和非最优化的应用程序,幸运的是,在 Ajax 应用程序中实现实时数据推送:学习使用基于套接字的 RIA 技术,某些富 Internet 应用程序(RIA)技术确实允许打开专用套接字通道,由后端服务器为 Asynchronous JavaScript and XML (Ajax) 应用程
这种技术可能会生成大量不必要的流量和非最优化的应用程序。幸运的是,某些富 Internet 应用程序(RIA)技术确实允许打开专用套接字通道,由后端服务器为 Asynchronous JavaScript and XML (Ajax) 应用程序提供进入其 API 并实现服务器推送的机会。这篇文章以多种方式探讨了这项技术,帮助您充分理解,以便着手开始进行自己的实现工作。
简介
Ajax 技术已经存在了一段时间,开发的动力已经真正开始得到了人们的认可。越来越多的 Web 站点正在考虑使用 Ajax 进行设计,开发人员也开始将 Ajax 的能力发挥到极限。随着社交网络和协作式报告等现象的出现,一组全新的要求浮现出来。如果有其他用户更改了某位用户正在观察的任何活动,则用户希望得到通知。如果一个 Web 站点显示动态数据,如股价等,那么所有用户都必须立即得到关于变更的通知。
这些场景本身属于一类称为 “服务器推送” 的问题。通常,服务器是中心实体,服务器将首先获得关于所发生的任何更改的通知,服务器负责将此类更改通知所有连接的客户端。但遗憾的是,HTTP 是客户端-服务器通信的标准协议,它是无状态的,而且在某种意义上来说,也是一种单向的协议。HTTP 场景中的所有通信都必须由客户端发起,至服务器结束,然而我们所提到的场景的需求则完全相反。对于服务器推送来说,需要由服务器发起通信,并向客户端发送数据。HTTP 协议并无相关配置,Web 站点应用程序开发人员使用独创的方法来绕过这些问题,例如轮询,客户端会以固定(或可配置)的时间间隔与服务器联系,查找是否有新更新可用。在大多数时候,这些轮询纯粹是浪费,因而服务器没有任何更新。这种方法不是没有代价的,它有两大主要问题。
更多精彩
赞助商链接