web异步入门

Web异步交互技术入门

Web交互开发中的异步、实时web交互技术,是当前Web应用技术研究领域的新热点之一。

一、传统方式的弊端

基于Http协议的web应用中,所有的请求都是由客户端发起的,服务端处于被动响应的地位,因此服务端不能主动的把新数据发送给客户端。传统的Web交互技术在实时要求较高的环境下显得力不从心。
最初,客户端通过设定自动刷新时间的方式来使浏览器主动刷新,此方式的缺点如下:
<1>刷新页面时,网页会出现空白,影响用户体验。
<2>大多数情况下,更新的信息只是很小的一部分。而刷新整个页面的信息量大,增加了网络负载,刷新的速度也慢。
<3>客户端设置的定时自动刷新不能真正的实时获得最新信息,是有延迟的。

二、Web实时交互技术

如何实时获取服务器端的最新数据,是web实时交互关注的内容。Web实时交互的4种技术,轮询、长轮询、长连接和推送。
轮询:客户端定时发送请求,服务器端接收到客户端请求后,马上进行相应,并关闭连接。
长轮询:客户端发送请求,服务器端接收到客户端请求后进行阻塞,并保持连接,当服务器端有数据需要响应时,使用保持住的连接进行响应,并关闭连接。
长连接:客户端发送请求,服务器端接收客户端请求后进行阻塞,并保持连接;当服务器端有数据需要响应是,使用保持住的连接进行响应,并保持住连接。
推送:客户端与服务器建立连接后,服务器端可以直接将数据推送给客户端。

其中,轮询是不断、循环使用基于HTTP协议的传统web交互方式,对服务器端数据进行获取,其在满足实时更新服务器端信息时有一定延迟。除此之外,长轮询、长连接及推送都可以满足实时更新服务器端信息,属于实时web交互技术范畴。

三、Web异步交互技术现状

针对传统的Web技术的三个缺点,现在的Web交互技术有了新的进展。主要分为三个大类,以iframe为代表的模拟异步传输,以Ajax为代表的浏览器段技术的异同通信技术,和以WebSocket为代表的真正实现“服务器推”的异步技术。每个技术都值得深入的研究和分析。

你可能感兴趣的:(Java框架学习笔记)