<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Jack Jiang

    我的最新工程MobileIMSDK:http://git.oschina.net/jackjiang/MobileIMSDK
    posts - 494, comments - 13, trackbacks - 0, articles - 1

    本文在編寫時(shí)參考了博客作者“鹿呦呦”和在線課程“即時(shí)消息技術(shù)剖析與實(shí)戰(zhàn)”的相關(guān)資料,一并表示感謝。

    1、系列文章引言

    IM系統(tǒng)看似簡(jiǎn)單(沒錯(cuò),很多土老板認(rèn)為開發(fā)個(gè)qq和微信也就是幾萬塊錢的事... ),實(shí)責(zé)是眾多技術(shù)的應(yīng)用合體,包括網(wǎng)絡(luò)編程、移動(dòng)開發(fā)、后端開發(fā)、高并發(fā)、高可用、高安全等技術(shù)范疇,再加上多端使用不同的編程語言,想要湊齊一個(gè)典型的IM產(chǎn)品技術(shù)棧那也不是個(gè)容易事。

    而對(duì)于IM開發(fā)入門者來說,想要在眾多的IM技術(shù)術(shù)語和概念中找到學(xué)習(xí)的方向和需要的資料,那也是件很讓人抓狂的事。如果看到不該看的技術(shù)深水區(qū)文章,直接從入門到放棄——被活活嚇退,那也是相當(dāng)悲劇的。

    本系列文章將盡量從理論概念入手,通俗易懂的梳理IM中的基礎(chǔ)技術(shù)概念和熱門技術(shù)點(diǎn),希望能幫你理清看似一團(tuán)亂麻的IM知識(shí)體系,助你找到清晰的IM技術(shù)學(xué)習(xí)方向,來日工資翻倍、迎娶白富美也未必不可能!

     

    友情提示:本系列文章側(cè)重于理論概念的講述,篇幅有限,點(diǎn)到即止,如需系統(tǒng)、深入、具體地學(xué)習(xí)IM技術(shù)的方方面面,請(qǐng)從此文入手:《新手入門一篇就夠:從零開發(fā)移動(dòng)端IM》(史詩級(jí)文章,適合從入門到放棄)。

    學(xué)習(xí)交流:

    - 即時(shí)通訊/推送技術(shù)開發(fā)交流5群:215477170[推薦]

    - 移動(dòng)端IM開發(fā)入門文章:《新手入門一篇就夠:從零開發(fā)移動(dòng)端IM

    2、系列文章目錄

    IM開發(fā)快速入門(一):什么是IM系統(tǒng)?》(* 本文

    《IM開發(fā)快速入門(二):什么是IM系統(tǒng)的實(shí)時(shí)性? (稍后發(fā)布)》

    《IM開發(fā)快速入門(三):什么是IM系統(tǒng)的可靠性? (稍后發(fā)布)》

    《IM開發(fā)快速入門(四):什么是IM系統(tǒng)的一致性? (稍后發(fā)布)》

    《IM開發(fā)快速入門(五):什么是IM系統(tǒng)的安全性? (稍后發(fā)布)》

    《IM開發(fā)快速入門(六):什么是IM系統(tǒng)的的心跳機(jī)制? (稍后發(fā)布)》

    《IM開發(fā)快速入門(七):如何理解并實(shí)現(xiàn)IM系統(tǒng)消息未讀數(shù)? (稍后發(fā)布)》

    《IM開發(fā)快速入門(八):如何理解并實(shí)現(xiàn)IM系統(tǒng)的多端消息漫游? (稍后發(fā)布)》

    3、本文內(nèi)容概述

    本文將帶你快速了解一個(gè)主流IM系統(tǒng)的應(yīng)用場(chǎng)景、典型架構(gòu)、技術(shù)特點(diǎn)和功能組成,幫你快速建立對(duì)IM系統(tǒng)的主觀認(rèn)知。

    如果你不想從技術(shù)的角度理解IM原理,可以嘗試閱讀此文:《知識(shí)科普:IM聊天應(yīng)用是如何將消息發(fā)送給對(duì)方的?(非技術(shù)篇)》。

    本文已收入即時(shí)通訊網(wǎng)的入門綱領(lǐng)性文章《新手入門一篇就夠:從零開發(fā)移動(dòng)端IM》。

    本文已同步發(fā)布于“即時(shí)通訊技術(shù)圈”公眾號(hào),歡迎關(guān)注:

    ▲ 本文在公眾號(hào)上的鏈接是:https://mp.weixin.qq.com/s/h7L4UGHRl7qI1bi8WyZ5iw,原文鏈接是:http://www.52im.net/thread-3065-1-1.html

    4、IM的應(yīng)用場(chǎng)景

    IM其實(shí)并不局限于聊天、社交這類“典型”應(yīng)用中,實(shí)際上它已經(jīng)廣泛運(yùn)用于我們身邊形形色色的軟件中。

    聊天、直播、在線客服、物聯(lián)網(wǎng)等所有需要實(shí)時(shí)互動(dòng)、高實(shí)時(shí)性的場(chǎng)景等等,都需要應(yīng)用到 IM 技術(shù)。

    下面這些場(chǎng)景是我們大家都熟悉的,都用到了IM技術(shù):

    • 1)微信、qq、釘釘?shù)戎髁鱅M應(yīng)用:這是IM技術(shù)的典型應(yīng)用場(chǎng)景;
    • 2)微博、知乎等社區(qū)應(yīng)用:它們利用IM技術(shù)實(shí)現(xiàn)了用戶私信等點(diǎn)對(duì)點(diǎn)聊天;
    • 3)抖音、快手等直播/短視頻應(yīng)用:它們利用IM技術(shù)實(shí)現(xiàn)了與主播的實(shí)時(shí)互動(dòng);
    • 4)米家等智能家居物聯(lián)網(wǎng)應(yīng)用:利用IM技術(shù)實(shí)現(xiàn)實(shí)時(shí)控制、遠(yuǎn)程監(jiān)控等;
    • 5)滴滴、Uber等共享家通類應(yīng)用:利用IM技術(shù)實(shí)現(xiàn)位置共享;
    • 6)在線教育類應(yīng)用:利用IM技術(shù)實(shí)現(xiàn)在線白板。 

    5、IM的典型架構(gòu)

    一個(gè)典型的IM架構(gòu)類似于下圖這樣:

    本圖引用自《即時(shí)消息技術(shù)剖析與實(shí)戰(zhàn)》學(xué)習(xí)筆記1——IM系統(tǒng)的架構(gòu)》一文

    如上圖所示,IM架構(gòu)中的各分層職責(zé)如下:

    • 1)客戶端:作為與服務(wù)端進(jìn)行消息收發(fā)通信的終端;
    • 2)接入層:也叫網(wǎng)關(guān)層,為客戶端收發(fā)消息提供入口;
    • 3)邏輯層:負(fù)責(zé)IM系統(tǒng)各功能的核心邏輯實(shí)現(xiàn);
    • 4)存儲(chǔ)層:負(fù)責(zé)IM系統(tǒng)相關(guān)數(shù)據(jù)的持久化存儲(chǔ),包括消息內(nèi)容、賬號(hào)信息、社交關(guān)系鏈等;
    • 5)第三方服務(wù):保證APP在未打開或后臺(tái)運(yùn)行時(shí)也能收到消息通知(這主要是第第3方消息推送服務(wù))。

    尤其對(duì)于“接入層”,它的職責(zé)最為關(guān)鍵,具體是:

    • 1)保持海量用戶連接;
    • 2)解析協(xié)議,對(duì)傳輸內(nèi)容進(jìn)行編解碼;
    • 3)維護(hù)客戶端的連接(也叫“Session”);
    • 4)推送消息。

    以下文章適合IM架構(gòu)設(shè)計(jì)入門,有興趣可以讀一讀:

    6、IM技術(shù)的特點(diǎn)

    IM技術(shù)的特點(diǎn)主要就是以下4點(diǎn): 

    ▶ 1)實(shí)時(shí)性:

    對(duì)于IM系統(tǒng),“實(shí)時(shí)”二字是精髓,也是這項(xiàng)技術(shù)存在關(guān)鍵意義所在。它保證的是消息的實(shí)時(shí)觸達(dá)。

    舉個(gè)例子:如果跟你的好友微信或qq聊天,我發(fā)的消息他不能即時(shí)收到,或者他發(fā)的信息你也不知道什么時(shí)候能收到,這基本上也就沒法聊下去了(干嗎不痛快打個(gè)電話呢)。

    ▶ 2)可靠性:

    保證消息的不丟失和不重復(fù),是IM系統(tǒng)的另一個(gè)關(guān)鍵技術(shù)特點(diǎn)。試想,當(dāng)你在用qq或微信跟女朋友聊天,好不容易鼓起勇氣向“她”表白,結(jié)果這消息要是丟包了,那肯定得卸載應(yīng)用了,搞不好砸手機(jī)都有可能。當(dāng)然,好話不說二遍,消息重復(fù)也同樣惱人。

    以下文章對(duì)消息的不丟/不重問題進(jìn)行了深入探討,有興趣可以詳讀:

    ▶ 3)一致性:

    對(duì)于單聊消息而言,保證同一個(gè)設(shè)備的時(shí)間順序、不同設(shè)備的漫游同步,也是相當(dāng)重要的一環(huán)。

    IM系統(tǒng)中的消息交互,就到底就是人跟人在“說話”,前言不搭理后言、或者胡言亂語式的消息展現(xiàn),那不是人瘋了就是程序瘋了,總之就是沒法再聊下去了。

    以下文章對(duì)消息時(shí)序問題進(jìn)行了深入探討,有興趣可以詳讀:

    ▶ 4)安全性:

    保證數(shù)據(jù)傳輸安全、數(shù)據(jù)存儲(chǔ)安全、消息內(nèi)容安全,也是IM系統(tǒng)必不可少的特性。尤其在私聊場(chǎng)景下,如果不能做到安全性,聊天的體驗(yàn)跟被人偷窺的感覺是沒有區(qū)別的。

    以下文章對(duì)IM的安全問題進(jìn)行了深入探討,有興趣可以詳讀:

    7、IM的功能組成

    淺顯的角度講,一個(gè)典型的IM功能組成,無非就是以下5樣:

    • 1)聯(lián)系人列表;
    • 2)聊天界面;
    • 3)消息發(fā)送通道;
    • 4)消息接收通道;
    • 5)消息存儲(chǔ);
    • 6)消息未讀數(shù)。

    我們一樣一樣來說說各自的用途。

    ▶ 1)聯(lián)系人列表:

    這個(gè)很好理解,使用IM系統(tǒng)的第一步,就是要解決“跟誰聊”的問題。從功能表象上來說,聯(lián)系人列表也就是社交關(guān)系列表,無非就是個(gè)信息列表界面,有什么特殊的地方?

    聯(lián)系人列表看似簡(jiǎn)單,實(shí)際上它是一系列IM系統(tǒng)的社交關(guān)系確立動(dòng)作的結(jié)果體現(xiàn)。

    要想建立聯(lián)系人列表,你可能需要實(shí)現(xiàn)以下邏輯:

    • 1)怎么能找到想要聊天的人?(需要實(shí)現(xiàn)隨機(jī)查找?精確查找?)
    • 2)怎么決定要不要跟這個(gè)人聊?(需要實(shí)現(xiàn)對(duì)方的個(gè)人信息查看)
    • 3)開始發(fā)出好友請(qǐng)求;
    • 4)被請(qǐng)求的一方,還可以決定是“同意”還是“拒絕”(“同意”該怎么處理?“拒絕”又該怎么處理?)。

    總的來說,聯(lián)系人列表的建立,是一個(gè)IM系統(tǒng)聊天關(guān)系確立的表現(xiàn),不可或缺。

    ▶ 2)聊天界面: 

    聊天界面看似很平常,實(shí)際它就是IM系統(tǒng)客戶端的核心功能所在,所有主要的IM功能都是通過它展現(xiàn)。

    它應(yīng)該具備的能力有:

    • 1)各種聊天功能按鈕:語音留言、圖片、文字、表情、文件、實(shí)時(shí)電話、實(shí)時(shí)視頻等;
    • 2)各種聊天消息顯示:各種消息都有不同的UI顯示元素和處理邏輯;
    • 3)流暢的使用體驗(yàn):大量不同類型的消息顯示時(shí),不能卡頓;
    • 4)即時(shí)顯示聊天消息:網(wǎng)絡(luò)線程收到的消息,要馬上在UI上顯示出來;
    • 5)歷史消息的加載:上次聊過的內(nèi)容也得顯示出來吧。

    以上只是簡(jiǎn)單羅列,這看似簡(jiǎn)單的聊天界面,能把上面列表的事情做好,工作量也不小吧。

    ▶ 3)消息發(fā)送通道:

    下圖是一個(gè)典型的IM消息收發(fā)通道示意: 

    如上圖所示,消息發(fā)送通道這個(gè)比較好懂,最淺顯易懂的理解就是用tcp或udp,建立socket長(zhǎng)連接,需要發(fā)消息的時(shí)候,wirte一下就過去了,好簡(jiǎn)單!

    但,事情往往不是想象的這么簡(jiǎn)單:

    • 1)如何保證這條socket長(zhǎng)連接時(shí)一直處于可用的狀態(tài)?
    • 2)當(dāng)socket長(zhǎng)連接不可用時(shí),用戶此時(shí)發(fā)送的消息該怎么處理?
    • 3)怎么保證發(fā)送的消息不丟?
    • 4)怎么保證發(fā)送的消息不復(fù)重?
    • 5)怎么保證發(fā)送的消息亂序?
    • 6)當(dāng)對(duì)方不在線時(shí),發(fā)送的消息去哪了?
    • 7)發(fā)送的消息,能保證實(shí)時(shí)送到?

    這么一說,事情還挺多(那不廢話嗎。。。)。

    ▶ 4)消息接收通道:

    正如上節(jié)中的消息收發(fā)通道示意圖所示,消息接收通道也很好理解,對(duì)方通過消息發(fā)送通道write的消息,我得收到并顯示啊。

    要實(shí)現(xiàn)一個(gè)可靠的消息接收通道,也并非易事:

    • 1)如何保證socket長(zhǎng)連接通道能隨時(shí)處于良好的邊接狀態(tài)(隨時(shí)接收對(duì)方write的消息);
    • 2)當(dāng)socket長(zhǎng)連接斷開時(shí),對(duì)方發(fā)送消息該怎么實(shí)現(xiàn)?
    • 3)當(dāng)socket恢復(fù)連接時(shí),怎么恢復(fù)之前的聊天現(xiàn)場(chǎng)?
    • 4)當(dāng)我收到對(duì)方的消息時(shí),對(duì)方怎么知道我已經(jīng)收到了?
    • 5)當(dāng)重復(fù)收到對(duì)方的消息時(shí),該怎么處理?
    • 6)當(dāng)收到的消息時(shí)序有錯(cuò)亂,該怎么處理?

    ▶ 5)消息存儲(chǔ):

    消息存儲(chǔ)這個(gè)功能好理解,聊天的消息如果存儲(chǔ),下次再聊的時(shí)候就不知道之前聊過什么,做不到這一點(diǎn),這個(gè)IM系統(tǒng)的聊天體驗(yàn)好不起來。

    那么,哪些情況下需要進(jìn)行消息存儲(chǔ)呢:

    • 1)對(duì)方不在線時(shí):聊天消息應(yīng)該存儲(chǔ)(這叫離線消息存儲(chǔ));
    • 2)對(duì)方在線時(shí):聊天消息也要存到本地存儲(chǔ)(這叫消息緩存);
    • 3)對(duì)方在線或不在線時(shí):聊天消息都要存到服務(wù)端(用于實(shí)現(xiàn)多設(shè)備的消息漫游和同步)。

    具體要存儲(chǔ)的內(nèi)容和時(shí)機(jī)也就上面這幾樣。

    但技術(shù)落到實(shí)處,要做的事情同樣少不了:

    • 1)離線消息該怎么多久?
    • 2)圖片、短視頻、大文件這類的離線消息,多媒體文件該怎么存(有可能量會(huì)很大)?
    • 3)當(dāng)本地的消息積累太多時(shí),怎么能保證本地存儲(chǔ)的性能?
    • 4)當(dāng)應(yīng)用更新、升級(jí)或異常時(shí),怎么能保證本地存儲(chǔ)的完整性(不被破壞)?
    • 5)怎么能保證多設(shè)備消息能不丟、不重、不亂?

    這么多需要考慮的內(nèi)容,也挺讓人抓狂。

    下圖是一個(gè)IM系統(tǒng)的典型存儲(chǔ)架構(gòu)設(shè)計(jì),了解一下:

    本圖引用自《現(xiàn)代IM系統(tǒng)中聊天消息的同步和存儲(chǔ)方案探討》一文

    存儲(chǔ)是IM系統(tǒng)的基石,以下文章可以深入閱讀:

    ▶ 6)消息未讀數(shù):

    消息未讀數(shù)?看起來也就是那個(gè)所有IM應(yīng)用都有的未讀小紅點(diǎn)嘛。是的,看起來也好簡(jiǎn)單!

    然而,消息未讀數(shù)功能的實(shí)現(xiàn)也一樣不簡(jiǎn)單:

    • 1)未讀數(shù)是客戶端實(shí)現(xiàn)還是服務(wù)端實(shí)現(xiàn)?
    • 2)會(huì)話未讀和總未讀怎么保持一致?
    • 3)多終端情況下,怎么保證未讀數(shù)的一致性(我在這臺(tái)設(shè)備上讀沒讀,那臺(tái)設(shè)備怎么知道的?)?

    是的,看起來就這么簡(jiǎn)簡(jiǎn)單單的3件事,但深入思考一下,還真的簡(jiǎn)單不起來。

    8、本文小結(jié)

    IM系統(tǒng)的應(yīng)用場(chǎng)景已經(jīng)不單單是IM聊天應(yīng)用這一種形態(tài),它已經(jīng)融入到互聯(lián)網(wǎng)應(yīng)用的方方面面,必竟誰都想自已的應(yīng)用具備“實(shí)時(shí)”交互這種能力,因?yàn)轶w驗(yàn)太好了。

    IM系統(tǒng)典型架構(gòu)無非就是網(wǎng)絡(luò)接入層、業(yè)務(wù)邏輯層、數(shù)據(jù)存儲(chǔ)層,除開網(wǎng)絡(luò)接入層,其它各層其實(shí)跟普通的應(yīng)用系統(tǒng)看起來差別并不是太大。

    IM系統(tǒng)的技術(shù)特點(diǎn)來說,就是實(shí)時(shí)性、可靠性、一致性、安全性,除了實(shí)時(shí)性對(duì)于多數(shù)應(yīng)用來說并不關(guān)心,其它的指標(biāo)也很好理解。

    IM系統(tǒng)的功能組成上,聯(lián)系人列表用于數(shù)據(jù)模型的建立、聊天界面承載了IM系統(tǒng)的終端展現(xiàn)、消息的收發(fā)通道用于實(shí)現(xiàn)“實(shí)時(shí)”這個(gè)特性、存儲(chǔ)和未讀數(shù)看似不是必須但用戶體驗(yàn)上確必不可少。

    附錄:更多IM開發(fā)資料匯總

    [1] 有關(guān)IM架構(gòu)設(shè)計(jì)的文章:

    淺談IM系統(tǒng)的架構(gòu)設(shè)計(jì)

    簡(jiǎn)述移動(dòng)端IM開發(fā)的那些坑:架構(gòu)設(shè)計(jì)、通信協(xié)議和客戶端

    一套海量在線用戶的移動(dòng)端IM架構(gòu)設(shè)計(jì)實(shí)踐分享(含詳細(xì)圖文)

    一套原創(chuàng)分布式即時(shí)通訊(IM)系統(tǒng)理論架構(gòu)方案

    從零到卓越:京東客服即時(shí)通訊系統(tǒng)的技術(shù)架構(gòu)演進(jìn)歷程

    蘑菇街即時(shí)通訊/IM服務(wù)器開發(fā)之架構(gòu)選擇

    騰訊QQ1.4億在線用戶的技術(shù)挑戰(zhàn)和架構(gòu)演進(jìn)之路PPT

    微信后臺(tái)基于時(shí)間序的海量數(shù)據(jù)冷熱分級(jí)架構(gòu)設(shè)計(jì)實(shí)踐

    微信技術(shù)總監(jiān)談架構(gòu):微信之道——大道至簡(jiǎn)(演講全文)

    如何解讀《微信技術(shù)總監(jiān)談架構(gòu):微信之道——大道至簡(jiǎn)》

    快速裂變:見證微信強(qiáng)大后臺(tái)架構(gòu)從0到1的演進(jìn)歷程(一)

    17年的實(shí)踐:騰訊海量產(chǎn)品的技術(shù)方法論

    移動(dòng)端IM中大規(guī)模群消息的推送如何保證效率、實(shí)時(shí)性?

    現(xiàn)代IM系統(tǒng)中聊天消息的同步和存儲(chǔ)方案探討

    WhatsApp技術(shù)實(shí)踐分享:32人工程團(tuán)隊(duì)創(chuàng)造的技術(shù)神話

    微信朋友圈千億訪問量背后的技術(shù)挑戰(zhàn)和實(shí)踐總結(jié)

    王者榮耀2億用戶量的背后:產(chǎn)品定位、技術(shù)架構(gòu)、網(wǎng)絡(luò)方案等

    IM系統(tǒng)的MQ消息中間件選型:Kafka還是RabbitMQ?

    騰訊資深架構(gòu)師干貨總結(jié):一文讀懂大型分布式系統(tǒng)設(shè)計(jì)的方方面面

    以微博類應(yīng)用場(chǎng)景為例,總結(jié)海量社交系統(tǒng)的架構(gòu)設(shè)計(jì)步驟

    快速理解高性能HTTP服務(wù)端的負(fù)載均衡技術(shù)原理

    子彈短信光鮮的背后:網(wǎng)易云信首席架構(gòu)師分享億級(jí)IM平臺(tái)的技術(shù)實(shí)踐

    IM開發(fā)基礎(chǔ)知識(shí)補(bǔ)課(五):通俗易懂,正確理解并用好MQ消息隊(duì)列

    微信技術(shù)分享:微信的海量IM聊天消息序列號(hào)生成實(shí)踐(算法原理篇)

    微信技術(shù)分享:微信的海量IM聊天消息序列號(hào)生成實(shí)踐(容災(zāi)方案篇)

    新手入門:零基礎(chǔ)理解大型分布式架構(gòu)的演進(jìn)歷史、技術(shù)原理、最佳實(shí)踐

    一套高可用、易伸縮、高并發(fā)的IM群聊、單聊架構(gòu)方案設(shè)計(jì)實(shí)踐

    社交軟件紅包技術(shù)解密(一):全面解密QQ紅包技術(shù)方案——架構(gòu)、技術(shù)實(shí)現(xiàn)等

    社交軟件紅包技術(shù)解密(二):解密微信搖一搖紅包從0到1的技術(shù)演進(jìn)

    社交軟件紅包技術(shù)解密(三):微信搖一搖紅包雨背后的技術(shù)細(xì)節(jié)

    社交軟件紅包技術(shù)解密(四):微信紅包系統(tǒng)是如何應(yīng)對(duì)高并發(fā)的

    社交軟件紅包技術(shù)解密(五):微信紅包系統(tǒng)是如何實(shí)現(xiàn)高可用性的

    社交軟件紅包技術(shù)解密(六):微信紅包系統(tǒng)的存儲(chǔ)層架構(gòu)演進(jìn)實(shí)踐

    社交軟件紅包技術(shù)解密(七):支付寶紅包的海量高并發(fā)技術(shù)實(shí)踐

    社交軟件紅包技術(shù)解密(八):全面解密微博紅包技術(shù)方案

    社交軟件紅包技術(shù)解密(九):談?wù)勈諵紅包的功能邏輯、容災(zāi)、運(yùn)維、架構(gòu)等

    社交軟件紅包技術(shù)解密(十):手Q客戶端針對(duì)2020年春節(jié)紅包的技術(shù)實(shí)踐

    從游擊隊(duì)到正規(guī)軍(一):馬蜂窩旅游網(wǎng)的IM系統(tǒng)架構(gòu)演進(jìn)之路

    從游擊隊(duì)到正規(guī)軍(二):馬蜂窩旅游網(wǎng)的IM客戶端架構(gòu)演進(jìn)和實(shí)踐總結(jié)

    IM開發(fā)基礎(chǔ)知識(shí)補(bǔ)課(六):數(shù)據(jù)庫(kù)用NoSQL還是SQL?讀這篇就夠了!

    瓜子IM智能客服系統(tǒng)的數(shù)據(jù)架構(gòu)設(shè)計(jì)(整理自現(xiàn)場(chǎng)演講,有配套PPT)

    阿里釘釘技術(shù)分享:企業(yè)級(jí)IM王者——釘釘在后端架構(gòu)上的過人之處

    從游擊隊(duì)到正規(guī)軍(三):基于Go的馬蜂窩旅游網(wǎng)分布式IM系統(tǒng)技術(shù)實(shí)踐

    微信后臺(tái)基于時(shí)間序的新一代海量數(shù)據(jù)存儲(chǔ)架構(gòu)的設(shè)計(jì)實(shí)踐

    IM開發(fā)基礎(chǔ)知識(shí)補(bǔ)課(九):想開發(fā)IM集群?先搞懂什么是RPC!

    >> 更多同類文章 ……

    [2] IM開發(fā)熱門綜合文章:

    新手入門一篇就夠:從零開發(fā)移動(dòng)端IM

    移動(dòng)端IM開發(fā)者必讀(一):通俗易懂,理解移動(dòng)網(wǎng)絡(luò)的“弱”和“慢”

    移動(dòng)端IM開發(fā)者必讀(二):史上最全移動(dòng)弱網(wǎng)絡(luò)優(yōu)化方法總結(jié)

    從客戶端的角度來談?wù)勔苿?dòng)端IM的消息可靠性和送達(dá)機(jī)制

    IM開發(fā)基礎(chǔ)知識(shí)補(bǔ)課:正確理解前置HTTP SSO單點(diǎn)登錄接口的原理

    移動(dòng)端IM中大規(guī)模群消息的推送如何保證效率、實(shí)時(shí)性?

    移動(dòng)端IM開發(fā)需要面對(duì)的技術(shù)問題

    開發(fā)IM是自己設(shè)計(jì)協(xié)議用字節(jié)流好還是字符流好?

    請(qǐng)問有人知道語音留言聊天的主流實(shí)現(xiàn)方式嗎?

    IM消息送達(dá)保證機(jī)制實(shí)現(xiàn)(一):保證在線實(shí)時(shí)消息的可靠投遞

    IM消息送達(dá)保證機(jī)制實(shí)現(xiàn)(二):保證離線消息的可靠投遞

    如何保證IM實(shí)時(shí)消息的“時(shí)序性”與“一致性”?

    一個(gè)低成本確保IM消息時(shí)序的方法探討

    IM單聊和群聊中的在線狀態(tài)同步應(yīng)該用“推”還是“拉”?

    IM群聊消息如此復(fù)雜,如何保證不丟不重?

    談?wù)勔苿?dòng)端 IM 開發(fā)中登錄請(qǐng)求的優(yōu)化

    移動(dòng)端IM登錄時(shí)拉取數(shù)據(jù)如何作到省流量?

    淺談移動(dòng)端IM的多點(diǎn)登錄和消息漫游原理

    完全自已開發(fā)的IM該如何設(shè)計(jì)“失敗重試”機(jī)制?

    通俗易懂:基于集群的移動(dòng)端IM接入層負(fù)載均衡方案分享

    微信對(duì)網(wǎng)絡(luò)影響的技術(shù)試驗(yàn)及分析(論文全文)

    即時(shí)通訊系統(tǒng)的原理、技術(shù)和應(yīng)用(技術(shù)論文)

    開源IM工程“蘑菇街TeamTalk”的現(xiàn)狀:一場(chǎng)有始無終的開源秀

    如約而至:微信自用的移動(dòng)端IM網(wǎng)絡(luò)層跨平臺(tái)組件庫(kù)Mars已正式開源

    全面掌握移動(dòng)端主流圖片格式的特點(diǎn)、性能、調(diào)優(yōu)等

    子彈短信光鮮的背后:網(wǎng)易云信首席架構(gòu)師分享億級(jí)IM平臺(tái)的技術(shù)實(shí)踐

    IM開發(fā)基礎(chǔ)知識(shí)補(bǔ)課(五):通俗易懂,正確理解并用好MQ消息隊(duì)列

    微信技術(shù)分享:微信的海量IM聊天消息序列號(hào)生成實(shí)踐(算法原理篇)

    自已開發(fā)IM有那么難嗎?手把手教你自擼一個(gè)Andriod版簡(jiǎn)易IM (有源碼)

    融云技術(shù)分享:解密融云IM產(chǎn)品的聊天消息ID生成策略

    IM開發(fā)基礎(chǔ)知識(shí)補(bǔ)課(六):數(shù)據(jù)庫(kù)用NoSQL還是SQL?讀這篇就夠了!

    適合新手:從零開發(fā)一個(gè)IM服務(wù)端(基于Netty,有完整源碼)

    拿起鍵盤就是干:跟我一起徒手開發(fā)一套分布式IM系統(tǒng)

    適合新手:手把手教你用Go快速搭建高性能、可擴(kuò)展的IM系統(tǒng)(有源碼)

    IM里“附近的人”功能實(shí)現(xiàn)原理是什么?如何高效率地實(shí)現(xiàn)它?

    IM要做手機(jī)掃碼登錄?先看看微信的掃碼登錄功能技術(shù)原理

    IM消息ID技術(shù)專題(一):微信的海量IM聊天消息序列號(hào)生成實(shí)踐(算法原理篇)

    IM消息ID技術(shù)專題(二):微信的海量IM聊天消息序列號(hào)生成實(shí)踐(容災(zāi)方案篇)

    IM消息ID技術(shù)專題(三):解密融云IM產(chǎn)品的聊天消息ID生成策略

    IM消息ID技術(shù)專題(四):深度解密美團(tuán)的分布式ID生成算法

    IM消息ID技術(shù)專題(五):開源分布式ID生成器UidGenerator的技術(shù)實(shí)現(xiàn)

    IM開發(fā)寶典:史上最全,微信各種功能參數(shù)和邏輯規(guī)則資料匯總

    IM開發(fā)干貨分享:我是如何解決大量離線消息導(dǎo)致客戶端卡頓的

    IM開發(fā)快速入門(一):什么是IM系統(tǒng)?

    >> 更多同類文章 ……

    (本文同步發(fā)布于:http://www.52im.net/thread-3065-1-1.html



    作者:Jack Jiang (點(diǎn)擊作者姓名進(jìn)入Github)
    出處:http://www.52im.net/space-uid-1.html
    交流:歡迎加入即時(shí)通訊開發(fā)交流群 215891622
    討論:http://www.52im.net/
    Jack Jiang同時(shí)是【原創(chuàng)Java Swing外觀工程BeautyEye】【輕量級(jí)移動(dòng)端即時(shí)通訊框架MobileIMSDK】的作者,可前往下載交流。
    本博文 歡迎轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)注明出處(也可前往 我的52im.net 找到我)。


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    Jack Jiang的 Mail: jb2011@163.com, 聯(lián)系QQ: 413980957, 微信: hellojackjiang
    主站蜘蛛池模板: 四虎免费影院ww4164h| 一本大道一卡二大卡三卡免费| 久9热免费精品视频在线观看| 日韩在线视频免费看| 亚洲午夜成人精品无码色欲| 国产人成免费视频网站| 337p欧洲亚洲大胆艺术| 2021国内精品久久久久精免费| 老汉色老汉首页a亚洲| 日本最新免费网站| 亚洲卡一卡二卡乱码新区| 日本牲交大片免费观看| 偷自拍亚洲视频在线观看99| 亚洲另类少妇17p| 国产一级a毛一级a看免费人娇| 亚洲综合在线另类色区奇米| 黄视频在线观看免费| 久久夜色精品国产亚洲AV动态图| 久久免费国产精品一区二区| 久久亚洲精品无码aⅴ大香 | 日韩在线视频免费| 久久亚洲2019中文字幕| 成全视频免费观看在线看| 337p日本欧洲亚洲大胆精品555588| **实干一级毛片aa免费| 亚洲色成人网站WWW永久四虎| 免费在线观看毛片| 免费看黄的成人APP| 亚洲视频网站在线观看| 在线观看免费成人| 亚洲一级片免费看| 亚洲视频在线观看免费视频| 一二三四免费观看在线电影| 国产精品亚洲精品日韩动图| 亚洲成亚洲乱码一二三四区软件| 99爱在线精品免费观看| 无码毛片一区二区三区视频免费播放| 精品久久久久久亚洲| 国产免费AV片在线播放唯爱网| 老司机精品视频免费| 亚洲视频在线一区|