LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

Web提醒服务的四种实现方式比较

admin
2019年9月12日 0:3 本文热度 2821
很多的大型Web系统中都有一个可以提醒用户的功能。

提醒的消息自然是越新鲜越实时越好。

对此,不同的系统采用不同的策略。

刷新。当刷新页面的时候查询新的消息。
当用户长期停留在一个页面的情况(以SPA为极端情况)下,这种刷新的操作就会使得消息的新鲜度受损。但总体来说,方便实现,且开销不大。用户在一个页面上停留的时间越短,这种策略就越好。

短轮询。定期发送一个Ajax请求到服务器检查新的消息。
设置一个周期(如1秒)向服务器发送一个异步请求检查是否存在新的消息。周期越短,开销越大;周期越长,新鲜度越低。要视具体情况权衡周期,通常周期的设置可以有 1秒、10秒、1分钟等,周期不会过长。

长轮询。与服务器建立长连接,用chunk流不断发送信息。
在一开始传数据(通常是指HTML)的时候,服务器设置类型为chunk,不告诉客户端这个数据具体有多少,因此客户端与服务器会保持持久的连接,会接受服务器持续发送的数据。这种情况可以想象看网络视频的时候,一个缓冲流的状态。优点是没有多余浪费的网络I/O资源(相比于短轮询),拥有真正的实时性。缺点是这个流不容易操控,操作起来不自然;客户端只能被动接受服务器的数据,如果要与服务器对话又要借助Ajax。

套接字。与服务器建立套接字,实时全双工的TCP协议的应用。
自H5技术中WebSocket的出现,彻底取代轮询的方案就已经出现。首先套接字也是建立一个长连接,但它的通讯协议就是ws,与http不是同一个协议,但它们都基于TCP。WebSocket可以用JavaScript直接操作,实时可读可写,相当于与服务器建立了一个新的实时对话通道。节约了短轮询的I/O浪费,又使得长轮询的编程复杂度下降。总体完爆轮询,是现代提醒服务,以及其他实时应用的不二之选。

该文章在 2019/9/12 0:03:31 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved