即时通讯
-
IM专题:分层架构IM系统(4)— Entry心跳算法
在前面的技术短文(IM专题:分层架构IM系统(1)— 架构解读)中,我们已经非常明确入口层 Entry 的核心职责,即面向客户端提供 TCP 长连接的接入能力,并维护这些长连接。 …
-
对安全即时通讯软件的流量分析攻击(下)
在上一篇文章《对安全即时通讯软件的流量分析攻击(上)》中,展示了流行的IM应用程序如何将其客户端的敏感信息泄漏给仅监视加密流量的攻击者。具体来说设计了流量分析攻击,使攻击者可以识别…
-
对安全即时通讯软件的流量分析攻击(上)
近年来,像Telegram,Signal和WhatsApp这样的即时消息(IM)应用程序变得非常流行。此类即时消息服务一直是被持续监视和审查的目标,因为这些服务是社会和政治敏感主题…
-
IM专题:分层架构IM系统(3)— Entry部署模式
在前面的一篇技术短文(IM专题:分层架构IM系统(1)— 架构解读)中,对【分层架构】进行了详细分析;今天我们聊一下【入口层】Entry 的部署模式。 Entry 作为 IM 系统…
-
IM专题:分层架构IM系统(2)— 局部演进
在电商业务日活几百万的情况下,IM 系统采用分层架构方式,如下图。 分层架构的 IM 系统,整体上包含了【终端层】、【入口层】、【业务逻辑层】、【路由层】、【数据访问层】和【存储层…
-
IM专题:分层架构IM系统(1)— 架构解读
今天开始,进入 IM 系统的【分层架构】阶段! 在日活只有几千的时候,IM 系统采用【单体架构】方式进行实现,是完全没有问题的。在单体架构 IM 系统(如下图)这种方式下,如果用户…
-
单体架构IM系统4(终篇)
基于 http 短轮询模式的单体架构的 IM 系统见下图,即客户端通过 http 周期性地轮询访问 server 实现消息的即时通讯,也就是我们前面提到的 “信箱模型”。“信箱模型…
-
单体架构IM系统3:消息实时性优化方案
在上一篇技术短文(单体架构IM系统2)中,我们讨论了 “信箱模型” 在单体架构 IM 系统中的应用,“信箱模型” 见下图。 客户端 A 将 “信件” 投入到客户端 B 的 “信箱”…
-
单体架构IM系统2:用户状态维护+点对点消息收发+云消息
在上一篇技术短文(单体架构IM系统1:业务背景+研发策略+技术选型)中,我们讨论了在 “用户规模小、开发人员少、开发时间短” 的业务背景下,采取 “怎么简单怎么做,怎么快怎么来” …
-
单体架构IM系统1:业务背景+研发策略+技术选型
先直接抛出业务背景! 有一款游戏,日活跃量(DAU)在两千左右,虽然 DAU 不高,但这两千用户的忠诚度非常高,而且会持续为游戏充值;为了进一步提高用户体验,继续增强用户的忠诚度,…
-
IM 1对1聊天系统架构和存储如何设计
在众多的软件中,聊天功能是不可或缺的一个功能模块,或是用户和用户,或是用户和客服,都需要一个能够即时沟通的功能。 那么一个IM(InstantMessaging)的1对1聊天系统架…
-
IM专题:IM 需求分析模型
需求是驱动软件架构和功能实现的源动力,把握住需求则把握住了软件架构的方向! IM 系统的每一项功能,理解很容易,但是数量繁多;作为 IM 系统的业务架构师,怎样对其进行有效的分类和…
-
IM技术专题设计
在上一篇短文中,提到【IM系统技术专题】,该技术专题初步规划的大纲如下: IM系统模型分析 IM系统需求分析 IM系统单体架构分析与核心逻辑实现 IM系统分层架构分析与核心逻辑实现…
-
WebSocket 回声客户端
WebSocket是一种通过TCP的双向通信协议。WebSocket在客户端和服务器之间提供了一个持久的连接。这意味着他们双方可以在任何时候发送数据。 回声客户端连接到回声服务器并…
-
WebSocket 前世今生 ?建立 WebSocket 的 6 种方式?
WebSocket 允许创建“实时”应用程序,这些应用程序比传统的 API 协议更快、开销也更小。 WebSocket有时被称为高端计算机通信协议,通过 WebSocket 来建立…
-
uniapp即时通讯demo示例源码跑通
ZEGO 即时通讯(ZIM)支持iOS、Android、macOS、Windows、Web、小程序、flutter、uniapp等平台。今天我们来分享uniapp即时通讯demo,…
-
如何在小程序中实现 WebSocket 通讯
在以前的文章中,我们介绍了HTTP通讯,这种通讯有一个缺点,如果我想从直接从服务器发消息给客户端,需要客户端先发起HTTP请求后服务器才能返回数据,且后续服务器想发送数据给客户端都…
-
即时通信IM核心能力及应用场景
新知系列课程第二季来啦!我们将为大家带来全真互联时代下新的行业趋势、新的技术方向以及新的应用场景分享。本期我们邀请了腾讯云音视频产品经理——郑聪兴,为大家分享腾讯云即时通信IM产品…
-
SpringBoot轻松整合WebSocket,实现Web在线聊天室
前面为大家讲述了 Spring Boot的整合Redis、RabbitMQ、Elasticsearch等各种框架组件;随着移动互联网的发展,服务端消息数据推送已经是一个非常重要、非…
-
Java Socket实现多人聊天室
Java小练手项目:用Java Socket实现多人聊天室,聊天室功能包括传输聊天内容或者文件。相比于其它的聊天室,增加了传输文件的功能供参考。 模块拆解 分成服务端和客户端两部分…