陌陌通訊協議的學習
陌陌發展剛開始由於規模小,30-40W的連線數(包括Android後臺長連線使用者),也使用XMPP;由於XMPP的缺點:流量大(基於XML),不可靠(為傳統固定網路設計,沒有考慮WIFI/2G/3G/地鐵/電梯等複雜網路場景),互動複雜(登陸需5-6次,尤其是TLS握手);XMPP丟訊息的根本原因:服務端和客戶端處於“半關閉”狀態,客戶端假連線狀態,服務端有收不到回執;Server端連線層和邏輯層程式碼沒有解耦分離,常常重啟導致不可用。
訊息中轉:
連線層(Connector連結叢集)
- 連線層的作用:只做訊息轉發
- 設計原則簡單/非同步
- 允許隨時重啟更新/只允許晚上重啟/不允許重啟斷線
- 單臺壓測試連線數70W;現狀:5億使用者,月活5000W+,連線數1200W+;
邏輯層(Logic邏輯叢集)
- 使用者會話驗證
- 訊息存取
- 非同步佇列
- 隨時重啟
通訊協議設計:
- 安全性要求
- 流量要求
- 傳輸要求可靠(不會丟訊息)
- 高效(弱網路快速的收發)
- 易於擴充套件
通訊協議:
- 常見協議XMPP/SIP
- 缺點:流量大,不可靠,互動複雜
採用私有通訊協議,目標:
- 高效,弱網路快速收發;
- 可靠,不會丟訊息;
- 易於擴充套件;
- 參考協議格式:REDIS協議;
Redis協議:
下面都是用Redis協議來描述邏輯
Read Redis Command
基於佇列的訊息協議
基於佇列的互動
- 傳統的IM協議
- 前提是基於網線、WiFI,網路延遲極小
- 行動網路下,互動及其費時,伺服器要維護每個狀態容易出錯
基於版本號的訊息協議
基於版本號的互動
針對弱網路的優化協議
- 訊息通過版本號維護順序
- 新訊息到達,Server只負責push通知
- Client收到輕量的msg-psh後發生同步請求
- Server按照版本號連續傳送msg
- Client告訴Server收到的最後的版本
監控
- 核心的長連線只用於傳輸輕量的實時資料,圖片、語音等都開新的TCP或HTTP連線;一切就緒後,最重要的就是監控,寫一個APP檢視所有的運營狀態,每天觀察;
如何選擇最優路線智慧路由、連線策略:
多埠、雙協議支援,應對移動閘道器代理的埠限制
- 支援TCP、HTTP兩種協議
- 根據備選IP列表進行併發測速(IP+埠+協議)
- 後端根據終端連線情況,定時更新終端的備選IP列表
- 終端在連線空閒時上報測速資料,便於後端決策
- TCP協議不通,自動切換到http
- 優先使用最近可用IP
- 併發測速,根據終端所處的位置下發多組IP、PORT,只用IP,不用域名,手機上的DNS50%不準
相關文章
- 陌陌財報:2016年Q2陌陌營收同比增長222% 視訊直播立大功營收
- 陌陌Feed讀後總結
- 陌陌財報圖解:2017年Q4陌陌淨利潤達1.1億美元圖解
- 陌陌還會重回遊戲懷抱嗎?遊戲
- 陌陌財報圖解:2015年Q1陌陌淨利潤670萬美元 同比扭虧圖解
- 陌陌財報圖解:2015年Q2陌陌淨利潤170萬美元 同比扭虧圖解
- 陌陌財報圖解:2018年Q2陌陌淨利潤1.178億美元 同比增長94%圖解
- 陌陌財報圖解:2018年Q1陌陌淨營收達27.6億元 同比增長64%圖解營收
- 陌陌財報圖解:2014年Q4陌陌營收1860萬美元 同比增長702.3%圖解營收
- 陌陌財報:2015年Q3陌陌淨營收為3750萬美元 同比增長204%營收
- 陌陌財報圖解:2017年Q3陌陌利潤7910萬美元 同比增長103%圖解
- 陌陌財報圖解:2016年Q1陌陌直播營收1560萬美元 成最大收入來源圖解營收
- 陌陌躋身移動廣告平臺四強
- iOS曝ZipperDown漏洞 快手、陌陌等均受影響!iOS
- 陌陌登入裝置異常怎麼解決
- 2019年營收超170億,陌陌增長的秘密何在營收
- 解決陌陌註冊新號就提示裝置異常
- 陌陌:2Q20營收38.68億元 同比減少6.8%營收
- 阿里解決資金問題 陌陌私有化破局阿里
- CNNIC:陌陌現場,這可能是一筆好生意CNN
- 運營級仿微信仿陌陌仿快手app原始碼出售轉讓APP原始碼
- Redis 通訊協議Redis協議
- HTTP通訊協議HTTP協議
- Mysql通訊協議MySql協議
- MQ通訊協議MQ協議
- web通訊協議Web協議
- 工信部約談陌陌:要求對ZAO App資料安全問題自查整改APP
- 陌陌現“20天掙80萬”廣告 暗藏網路盜車內幕
- 社交app走約炮路線早晚得死,陌陌,你還能約多久?APP
- 新版陌陌支援“以歌會友” 實現聽歌聊天兩不誤
- HTTP協議的通訊框架HTTP協議框架
- WLAN常用的通訊協議協議
- Facebook、微信和陌陌 一起來看看社交應用的商業化嘗試
- 陌陌:2019全年淨營收170.151億元 同比增長27%營收
- 受阿里系加入買方財團影響 陌陌股價上漲34%阿里
- 網路通訊協議協議
- Dubbo-通訊協議協議
- 串列埠通訊協議串列埠協議