1、轮询:客户端定时向服务器发送Ajax请求,服务器接到请求后马上返回响应信息,并关闭连接。
2、长轮询:客户端向服务器发送Ajax请求,服务器接到请求后Hold住连接,直到有新消息才返回响应信息,并关闭连接;客户端处理完响应信息后再向服务器发送新的请求。
3、长连接:在页面中嵌入一个隐藏的jframe,将这个隐藏的iframe的src属性设置为对一个长连接的请求或者采用XRH请求,服务器端就能源源不断地往客户端输入数据。
4、Flash Socket:在页面中嵌入一个使用了Socket类的Flash程序,JavaScript通过调用此Flash程序提供的Socket接口与服务器端的Socket接口进行通信,JavaScript在收到服务器端传送的信息后控制页面的显示。
5、WebSocket:WebSocket是HTML5开始提供的一种浏览器与服务器间进行全双工通讯的网络技术;依靠这种技术可以实现客户端和服务器端的长连接,双向实时通讯。
运用这些方式,可以做好消息推送。好的消息推送平台也是做好推送的重要一部分,极光JPush 是经过考验的大规模 App 推送平台,每天推送消息量级为数百亿条。 开发者集成 SDK 后,可以通过调用 API 推送消息。
websocket消息推送的网页界面,用户只有打开这个界面的时候才与服务器建立连接,当此页面跳转到另一个页面连接就断了,但网站不可能只有一个页面,代码写在某一个页面的话,用户浏览其他页面就不能接受到推送信息。
如果每个页面都嵌入连接的代码的话,用户在浏览不同页面的时候就就不停的断开再重新建立连接,对服务器性能也是个考验。
一般都是用多 frame 来实现,即建立 WebSocket 是单独的一个 frame,且此 frame 不随页面切换而刷新,至于其他需要在页面切换时刷新的元素放在其他 frame 里。
在没有 HTML5 之前都是用轮询或者 Ajax 来实现消息推送的,WebSocket 本身占用的资源就比前两者要少,要是连这种强度服务器都承受不了。
后端推送数据方式就有点类似于 tcp 的方式,搭配框架实现起来还很方便的,如果你了解php,建议你后端使用 php workerman,当然websocket其实只能实现在线推送,推送方面类似的比如 极光推送也不错。
极光推送除了有着完善的控制台外,还提供了服务端的接口,方便开发者的服务器调用,方便开发者对于应用管理、整合即通过应用服务器极光服务器推送服务器用户设备,简化了服务器端的开发强度,也方便运营期间发送推送消息的流程。
通常webapp与服务器通信都是通过ajax或者直接提交表单来实现的。
1、Java后台服务器打开>以下是课程大纲,可以参考一下
(1)HTML5+CSS3
经典表格布局制作简历
1 HTML5介绍 2 HTML5发展史 3 HTML5简介 4 >
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)