一、什么是多終端漫游 多終端漫游是指:用戶在任意一個設備登錄后,都能獲取到歷史的聊天記錄。如:QQ 默認漫游 7 天的聊天記錄,開通 VIP 會員可漫游 30 天,開通 SVIP 會員可漫游 2 年。 二、多終端漫游的實現 支持消息多終端漫游一般需要兩個條件: 設備在線狀態 離線 ...
大部分消息進行服務端存儲,是為了便於查看歷史消息或者用於暫存離線消息。 一個支持用戶點對點聊天的消息收發架構主要包括三部分:消息存儲 消息未讀和消息收發通道。 一 消息存儲 假設收發雙方的歷史消息都是相互獨立的,即一方發送消息后刪除了消息,另一方仍可獲取到這條消息,則消息的存儲需要用到兩張表:消息內容表 圖中的 user message 表 和消息索引表 圖中的 user message hist ...
2019-08-31 23:30 1 573 推薦指數:
一、什么是多終端漫游 多終端漫游是指:用戶在任意一個設備登錄后,都能獲取到歷史的聊天記錄。如:QQ 默認漫游 7 天的聊天記錄,開通 VIP 會員可漫游 30 天,開通 SVIP 會員可漫游 2 年。 二、多終端漫游的實現 支持消息多終端漫游一般需要兩個條件: 設備在線狀態 離線 ...
一、IM的應用場景 聊天、直播、在線客服、物聯網等所有需要 實時互動、高實時性的場景,都需要應用到 IM 技術。 圖片來源於《即時消息技術剖析與實戰》開篇詞 除了上面提到的聊天、直播互動、物聯網等這些場景,生活中接觸到的聯機游戲、視頻會議、在線協作等場景 ...
IM 系統中,保證消息的可靠投遞主要體現在兩方面,一是消息的不丟失,二是消息的不重復。 一、消息不丟失 消息丟失的原因 首先看一下發送消息的流程,如下圖所示: 圖片來源於《即時消息技術剖析與實戰》第 04 講 用戶 A 發出的消息,先到達IM服務端(步驟1),由服務端暫存(步驟 ...
IM 技術經歷過幾次迭代升級,如圖所示: 從簡單、低效的短輪詢逐步升級到相對效率可控的長輪詢; 全雙工的 Websocket 徹底解決了服務端的推送問題; 基於 TCP 長連接衍生的 IM 協議,能夠實現服務端的主動推送。 一、基於HTTP協議的短輪詢與長連接 ...
在消息產生、流轉的各個環節中,需要保證消息傳輸安全性、消息存儲安全性、消息內容安全性。 一、消息傳輸安全性 消息傳輸的重要防范點有兩個,一是訪問入口安全,二是傳輸鏈路安全。 1.HttpDNS保證訪問入口安全 訪問入口指的是即時消息服務中提供的一個公網的接入服務,作為用戶收發消息的出入口 ...
一、什么是消息一致性 消息一致性指的是消息的時序一致性,即消息收發的一致性。如果不能保證時序一致性,就會造成聊天語義不連貫,引起誤會。 對於點對點的聊天場景,時序一致性保證接收方的接收順序和發送方的發出順序一致;對於群聊場景,時序一致性保證所有接收人看到的消息展現順序一致。 二、消息一致性 ...
一、什么是消息未讀 消息未讀包括 會話未讀和 總未讀。前者指的是當前用戶和某一聊天方的未讀消息數,后者指的是當前用戶的所有未讀消息數,也就是所有會話未讀的和。比如用戶A收到用戶B的2條消息,還收到用戶C的3條消息,則用戶A與B的會話未讀數是2,用戶A與C ...
假設有以下突發意外情況: 用戶進入信號不好的地方,手機沒有網絡信號了 上網的路由器突然掉線了 這個時候,比如微信發消息,消息就會轉圈圈,甚至變成紅色嘆號…… 上面情況都會導致“長連接”不可用。 我們知道,為了讓消息能更加實時、可靠、快速地觸達到接收方,大部分 IM 系統會通過“長 ...