首页
学习
活动
专区
圈层
工具
发布
技术百科首页 >SSE >SSE与短轮询(Short Polling)相比有什么优势?

SSE与短轮询(Short Polling)相比有什么优势?

词条归属:SSE

1. 消息延迟差异

短轮询通过客户端周期性地发起HTTP请求检查是否有新数据,延迟取决于轮询间隔:间隔设为1秒则平均延迟500毫秒,间隔设为5秒则平均延迟2.5秒。SSE 在服务器产生新数据的瞬间即可推送到客户端,延迟通常为毫秒级,在股票行情、实时通知等对时效性敏感的场景中具有压倒性优势。

2. 服务器负载差异

短轮询无论是否有新数据,客户端都会按固定频率发起请求,服务器需要为每个请求执行完整的处理流程(路由、认证、数据查询等)。在高并发场景下,大量"无新数据"的轮询请求会消耗大量服务器资源。SSE 在无新数据时服务器无任何推送动作,仅维持连接空闲,仅在有新数据时才写入响应,服务器资源利用率显著更高。

3. 移动端电量与流量消耗差异

短轮询频繁发起HTTP请求,每次请求都需进行TCP连接建立和(若为HTTPS)TLS握手,会显著增加移动设备的无线电使用时间和电量消耗。SSE 通过单一长连接传输所有推送数据,避免了频繁建立连接的开销,在移动设备上的能效表现明显更优,有助于延长电池续航时间。

4. 适用场景差异

短轮询的实现最简单,无需服务器特殊支持,适用于数据更新频率极低(如每小时更新一次)或客户端数量极少的内网管理场景。SSE 适用于需要"近实时"数据更新的场景,且服务器需支持HTTP长连接。在实际选型时,若轮询间隔可设置为较长(如30秒以上)且数据实时性要求不高,短轮询因其极简的架构仍有一定应用价值。

相关文章
为什么Netty这么火?与Mina相比有什么优势?
Netty是什么?为什么这么火? Netty是目前最流行的由JBOSS提供的一个Java开源框架NIO框架,Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。 相比JDK原生NIO,Netty提供了相对十分简单易用的API,非常适合网络编程。Netty是完全基于NIO实现的,所以Netty是异步的。 作为一个异步NIO框架,Netty的所有IO操作都是异步非阻塞的,通过Future-Listener机制,用户可以方便的主动获取或者通过通知机制获
Java技术栈
2018-03-30
4.8K0
IM通信技术快速入门:短轮询、长轮询、SSE、WebSocket
👋 你好,我是 Lorin 洛林,一位 Java 后端技术开发者!座右铭:Technology has the power to make the world a better place.
Lorin 洛林
2023-11-27
1.6K0
连夜撸了一个简易聊天室
分不清轮询、长轮询?不知道什么时候该用websocket还是SSE,看这篇就够了。
芋道源码
2020-12-08
9590
开源XL-LightHouse与Flink、ClickHouse之类技术相比有什么优势
Flink是一款非常优秀的流式计算框架,而ClickHouse是一款非常优秀的OLAP类引擎,它们是各自所处领域的佼佼者,这一点是毋庸置疑的。Flink除了各种流式计算场景外也必然可以用于流式统计,ClickHouse同样也可以用于流式统计,但我不认为它们是优秀的流式统计工具。XL-Lighthouse在流式统计这个细分场景内足以完胜Flink和ClickHouse。在企业数据化运营领域,面对繁杂的流式数据统计需求,以Flink和ClickHouse以及很多同类技术方案为核心的架构设计不能算是一种较为优秀的解决方案。
用户2468294
2023-08-16
9150
IM通信技术快速入门:短轮询、长轮询、SSE、WebSocket
即时通讯(Instant Messaging,简称IM)已经成为现代应用中不可或缺的一部分。为了实现实时的消息传递,开发者需要选择合适的通信技术。本文将介绍四种常见的IM通信技术:短轮询、长轮询、Server-Sent Events(SSE)、WebSocket,并通过简单的代码示例来演示它们的实现方式。
IT_陈寒
2023-12-14
1.7K0
点击加载更多
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
领券