| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 即时通讯怎么做到安全可靠的传输信息 -> 正文阅读 |
|
[系统运维]即时通讯怎么做到安全可靠的传输信息 |
一、消息传输的可靠性是即时通讯系统的核心 随着科技发展,无论是工作还是生活即时通讯已成为了大家传输信息必不可少的工具。既然要承担传输消息的重任,传输的可靠性自然是**即时通讯**系统中是最为基础、也是最核心的部分之一,同时也是衡量通讯系统的质量的重要指标。那即时通讯系统是怎么传输消息的呢?那下面我们先来了解一即时通讯消息传输的模型吧。 ? 二、即时通讯消息传输模型 常见的即时通讯消息传输的模型,如快递式系统模型和邮件服务模型。 快递式系统模型 什么是快递式系统模型呢? 快递式系统模型完全可以用生活中快递运输为例进行理解,把ClientA比作为寄件人,Server比作快递公司,ClientB比作收件人。 快递寄送每一个阶段其实都是相对独立的,比如说寄件人把快递给到快递公司,快递公司运送快递给收件人;如果快递收取、运送、派送等过程出现意外导致丢失,收件人将无法获取到快递,并且这种丢失是无法挽回的。 因此快递式系统模型的消息到达率难以有效保障,容易由中间环节、程序设计等问题导致消息丢失,RTX腾讯通采用的就是这种模型。 邮件服务模型 邮件服务是一种历史悠久的通讯系统,这种模型是建立在服务器持久保存数据的基础上。 作为发送方,整个邮件的发送过程是一个完整的事务,只有当服务器收到邮件内容并且保存到磁盘才会告诉发送方发送成功,发送方如果收不到成功的结果,就会在邮件客户端给予提醒,让用户选择重新进行发送; 作为接收方,邮件客户端会定期检查新邮件,将服务器的数据同步到到本地,标记出哪些是新邮件之后,向用户弹出新邮件提醒。 这种模式的优点在于,模型简单清晰,发送方和接收方各司其职,发送和接收的可靠性得以充分保障。 简单来说,从以下几个方面去保障消息可靠性: 1.消息服务器漫游。消息是存储在服务器上的,消息接收方是可以二次获取的,比如说更换了设备登录,也是能正常地拉取和看到之前的聊天记录; 2.客户端发送保障机制。发送方向服务器发送新消息时,当客户端调用接口失败或超时会采用多次重试机制,只有消息落地成功,服务器才会回复发送方,消息发送成功,即使是发送失败,客户端也是有明确的提示; 3.Simple Push 模型与RESTFUL API结合服务。TCP长连接通道只负责极少量的数据通信(登录、事件通知),主要业务数据通过RESTFUL API(https连接,支持复用)。对于移动网络或不稳定的网络环境,轻量级的TCP通讯和短连接方式能够规避大部分的链路不可靠问题; 4.微服务模式设计。将业务相对独立的拆分为多个服务,可以分机部署,这种模式能够有效地实现故障隔离,提升整体服务的可靠性和可用性;即时通讯开发 5.消息通知保障机制。当会话中有新消息产生,服务器通给接收方实时下发新消息通知,客户端接收到通知后,再从服务器拉取消息内容。服务器下发通知需要客户端确认,如果在无确认时,服务器会进行多次间断式重发通知; 6.客户端获取消息保障机制。客户端收到新消息通知时,获取消息时会自动补全完整的消息记录。在网络发生波动时,客户端会重新建立连接并立即拉取所有的未读会话;而且会自动校验该会话是存在消息空洞,如果存在,一同向服务器拉取补全。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 0:00:20- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |