• 使用webSocket实现对数据的实时推送


    使用webSocket实现对数据的实时推送详解

    1.什么是webSocket?

    相对于 HTTP 这种非持久的协议来说,websocket是 HTML5 出的一个持久化的协议。

    2.实时推送数据的实现方式以及应用场景

    实现方式
    1.轮询:客户端通过代码定时向服务器发送AJAX请求,服务器接收请求并返回响应信息。
    优点:代码相对简单,适用于小型应用。
    缺点:在服务器数据没有更新时,会造成请求重复数据,请求无用,浪费带宽和服务器资源。

    2.长连接:在页面中嵌入一个隐藏的iframe,将这个隐藏的iframe的属性设置为一个长连接的请求或者xrh请求,服务器通过这种方式往客户端输入数据。
    优点:数据实时刷新,请求不会浪费,管理较简洁。
    缺点:长时间维护保持一个长连接会增加服务器开销。 

    3.webSocket:websocket是HTML5开始提供的一种客户端与服务器之间进行通讯的网络技术,通过这种方式可以实现客户端和服务器的长连接,双向实时通讯。
    优点:减少资源消耗;实时推送不用等待客户端的请求;减少通信量;
    缺点:少部分浏览器不支持,不同浏览器支持的程度和方式都不同

    应用场景:聊天室、智慧大屏、消息提醒、股票k线图监控等。

    1. 为什么叫心跳包呢?
    它就像心跳一样每隔固定的时间发一次,来告诉服务器,我还活着。

    2. 心跳机制是?
    心跳机制是每隔一段时间会向服务器发送一个数据包,告诉服务器自己还活着,同时客户端会确认服务器端是否还活着,如果还活着的话,就会回传一个数据包给客户端来确定服务器端也还活着,否则的话,有可能是网络断开连接了。需要重连~

    3.实现心跳检测的思路:
    每隔一段固定的时间,向服务器端发送一个ping数据,如果在正常的情况下,服务器会返回一个pong给客户端,如果客户端通过 onmessage 事件能监听到的话,说明请求正常,这里我们使用了一个定时器,每隔3秒的情况下

  • 相关阅读:
    【华为OD机试真题 JS】求满足条件的最长子串的长度
    第十四届蓝桥杯模拟赛(第三期)Excel表
    微信小程序4种弹框
    基于华为云云耀云服务器L实例开展性能评测|MySQL性能测评
    LightDB中的存储过程(八)—— 包
    数据结构——经典链表OJ(二)
    数据增强方法汇总
    【电子电路】长按键拉低电平,适用在有休眠机制的MCU但是没有看门狗,一个按键多个功能场景下使用
    【安鸾靶场】cmseasy&内网渗透 (500分)
    Group DETR
  • 原文地址:https://blog.csdn.net/zxy15974062965/article/details/126968404