首页 > 其他分享 >Web 实时消息推送

Web 实时消息推送

时间:2024-01-16 17:00:04浏览次数:29  
标签:Web 请求 实现 轮询 实时 推送 服务端 客户端

总结

以下内容为 JavaGuide 补充

 介绍优点缺点
短轮询 客户端定时向服务端发送请求,服务端直接返回响应数据(即使没有数据更新) 简单、易理解、易实现 实时性太差,无效请求太多,频繁建立连接太耗费资源
长轮询 与短轮询不同是,长轮询接收到客户端请求之后等到有数据更新才返回请求 减少了无效请求 挂起请求会导致资源浪费
iframe 流 服务端和客户端之间创建一条长连接,服务端持续向iframe传输数据。 简单、易理解、易实现 维护一个长连接会增加开销,效果太差(图标会不停旋转)
SSE 一种服务器端到客户端(浏览器)的单向消息推送。 简单、易实现,功能丰富 不支持双向通信
WebSocket 除了最初建立连接时用 HTTP 协议,其他时候都是直接基于 TCP 协议进行通信的,可以实现客户端和服务端的全双工通信。 性能高、开销小 对开发人员要求更高,实现相对复杂一些
MQTT 基于发布/订阅(publish/subscribe)模式的轻量级通讯协议,通过订阅相应的主题来获取消息。 成熟稳定,轻量级 对开发人员要求更高,实现相对复杂一些
 

标签:Web,请求,实现,轮询,实时,推送,服务端,客户端
From: https://www.cnblogs.com/lengsong/p/17968036

相关文章

  • 如何通过WebDAV服务器访问铁威马NAS
    WebDAV是HTTP协议的扩展,可让用户管理存储在远程服务器上的文件,可以使用用户名和密码来进行访问,同时直接拷贝,编辑或删除共享空间内的文件。启用WebDAV服务器后,可使用支持WebDAV的客户端程序(如WinSCP、RaiDrive、MacOSFinder、Linux资源管理器)访问TNAS设备。接下来为大家分享......
  • 《eslint篇》webstorm配置eslint校验
    法1:安依赖方式参考链接:https://blog.csdn.net/weixin_43575792/article/details/1232478621.安装依赖并初始化文件首先安装eslintnpminstalleslint--save-dev安装完成后我们开始初始化eslint配置文件npminit@eslint/config上述选择大家根据自己的需求来改变,博......
  • docker jmeter分布式压测部署 jmeter websocket压测
    测试场景:1.多名用户加入房间。2.房间人数为固定人数(比如4人) 3.有人进入时,进入用户会收到反馈当前房间人员列表。4.其他人会收到反馈新加入用户的信息消息。5.当人数已满时,会自动推送消息给所有人。6.在人满后,每个人需要按固定序列,发送消息。7.所有人发送特定消息后,推进房......
  • JMeter测试WebSocket的经验总结
    最近有一个微信聊天系统的项目需要性能测试,既然是测试微信聊天,肯定绕不开websocket接口的测试,首选工具是Jmeter,网上能搜到现成的方法,但是网上提供的jar包往往不是最新的,既然是用最新版本的Jmeter4.0,那么所依赖的插件jar包也应该追求新的。所以提供了以下链接供大家下载(甚至连源码......
  • Django中安装websocket
    完整代码:https://gitee.com/mom925/django-system项目结构:先安装所需库:pipinstallchannels下面将websocket作为插件一样的只需要引入配置的结构asgi.py文件http请求不变、修改websocket请求调用路径importosimportdjangofromchannels.httpimportAsgiHandlerfr......
  • 《webpack篇》webpack
    webpackwebpack的产生随着前端的发展,javascript引入了很多思想和技术,例如:模块化、TypeScript、Scss、Less等,这让我们开发更快,但是,这些新的文件格式只有转换成javascript、css等,游览器才能识别,人工转换太过繁琐,所以webpack应运而生。webpack是什么参考链接:https://www.cnblogs.......
  • rsync+inotify-tools实时同步数据
    rsync+inotify-tools实时同步数据原创 青菜浪人 青菜浪人 2023-10-0912:42 发表于陕西 听全文rsync是Linux系统下的数据镜像备份工具,可以在本地或远程系统之间同步文件和目录,支持增量备份,速度快,占用资源少,使用简单方便。rsync特点-速度快,占用资源少。-可以使......
  • web DevOps / css id / css class / javascript / Browser Object Model / bom / Docu
    sNSD_DEVOPS_02CSS概述概念与理解层叠样式表—也就是CSS—是在HTML之后应该学习的第二门技术。HTML用于定义内容的结构和语义,CSS用于设计风格和布局。比如,我们可以使用CSS来更改内容的字体、颜色、大小、间距,将内容分为多列,或者添加动画及其他的装饰效果。修改页......
  • 41. 干货系列从零用Rust编写负载均衡及代理,websocket与tcp的映射,WS与TCP互转
    wmproxywmproxy已用Rust实现http/https代理,socks5代理,反向代理,静态文件服务器,四层TCP/UDP转发,七层负载均衡,内网穿透,后续将实现websocket代理等,会将实现过程分享出来,感兴趣的可以一起造个轮子项目地址国内:https://gitee.com/tickbh/wmproxygithub:https://github.com/......
  • Go Websocket库推荐
    gws常用的操作json格式参考homeassiatant文档中的那个定义:hawebsocket文档定义handler,它是gws的websocket的回调方法集合定义的接口//ClientEventHandler是Websocket事件回调的模板.//有open,close,ping,pong(客户端其实没有ping操作,所以就自然不存在pong......