国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

據說,微信搞不定狀態同步,才取消了“在線”的概念?

開發 架構
微信“在線”的產品設計理念我不知道,做了幾十年IM,可以和大家聊聊在線狀態同步相關的架構設計。

有童鞋問我說,聽說QQ狀態同步過于復雜,微信的架構師搞不定,才取消了“在線”的概念,是這樣嗎?

微信“在線”的產品設計理念我不知道,做了幾十年IM,可以和大家聊聊在線狀態同步相關的架構設計。

QQ在線狀態同步分兩大類:

  • 好友狀態的同步;
  • 群友狀態的同步;

這兩類狀態同步的需求各異,前者需要實時同步,后者能夠容忍延時。

任何脫離業務的架構設計都是耍流氓,這兩類場景的狀態同步,究竟是推送還是拉取呢?

用戶的在線狀態,分為:

  • 客戶端狀態(端,顯示狀態);
  • 服務端狀態(云,真實狀態);

兩種形態。

什么是服務端狀態?

服務端狀態,在線online和離線offline兩種,這是用戶的真實在線狀態。不同的狀態,對于不同的業務處理流程可能不同。

例如,對于消息的處理:

  • 服務端狀態在線,直接投遞給用戶;
  • 服務端狀態離線,則存儲離線消息,等用戶下一次登錄拉?。?/li>

如何實時更新服務端狀態?

用戶uid-A登錄時,會修改用戶的服務端狀態為在線。

用戶uid-A登出時,會修改用戶的服務端狀態為離線。

經常的,服務端會將用戶的服務端狀態存儲在高可用的緩存集群里。

什么是客戶端狀態?

對好友,群友顯示的在線狀態,例如隱身、離線、忙碌、勿擾等,是客戶端狀態,這些狀態是產品功能需求。我們所說的“用戶狀態同步”,都是指的客戶端狀態。

為了方便介紹,假設客戶端狀態也只有online和offline兩種狀態,與服務端狀態一致,后文統一稱為“用戶狀態”。

如何獲取好友的狀態?

uid-A登錄時,先去數據庫拉取自己的好友列表,再去緩存獲取所有好友的狀態。

用戶uid-A的好友uid-B狀態改變時(由登錄、登出等動作觸發),uid-A如何同步這一事件?

情況一:如果對于狀態變更實時性要求不高,可以采用拉取。

uid-A向服務器輪詢拉取uid-B(其實是自己的全部好友)的狀態,例如每1分鐘一次,其缺點是:

  • 如果uid-B的狀態改變,uid-A獲取不實時,可能有1分鐘時延;
  • 如果uid-B的狀態不改變,uid-A會有大量無效的輪詢請求,非常低效;

情況二:如果對于狀態變更實時性要求較高,則必須推送。

uid-B狀態改變時(由登錄、登出等動作觸發),服務端不僅要在緩存中修改uid-B的狀態,還要將這個狀態改變的通知推送給uid-B的在線好友。

推送的優勢是:實時。

缺點是:當在線好友量很大時,任何一個用戶狀態的改變,會擴散成N個實時通知,這個N叫做“消息風暴擴散系數”。

假設一個IM系統平均每個用戶有200個好友,平均有20%的好友在線,那么消息風暴擴散系數N=40,這意味著,任何一個狀態的變化會變成40個推送請求。

群友狀態的一致性,和好友狀態的一致性相比,復雜在哪里?可不可以采用實時推送?

群業務場景大伙也非常熟悉,你能夠加入若干群(例如20個),假設平均每個群有200人,即你會有4000個群友。依然假設20%的用戶在線,那么為了保證群友狀態的實時性,每個用戶登錄,就要將自己的狀態改變通知發送給20*200*20%=800個群友,N=800,意味著,任何一個狀態的變化會變成800個推送請求。

如果說好友狀態實時推送,消息風暴擴散系數N=40尚可以接受,那么群友狀態實時推送,N=800則是災難性的。此類業務往往采用輪詢拉取的方式,獲得群友的狀態。

輪詢拉取群友狀態也會給服務器帶來過大的壓力,還有什么優化方式?

群友的數據量太大,雖然每個用戶平均加入了20個群,但實際上并不會每次登錄都進入每一個群。

不采用輪詢拉取,而采用按需拉取,延時拉取的方式,在真正進入一個群時才實時拉取群友的在線狀態,是既能滿足用戶需求(用戶感覺是狀態是實時、一致的,但其實是進入群才拉取的),又能降低服務器壓力。這是一種常見方法。

總結

狀態的實時性與一致性是一個較難解決的技術問題,一般來說:

  • 好友狀態同步,是采用推送的方式同步;
  • 群友狀態同步,由于消息風暴擴散系數過大,一般采用拉取的方式同步;
  • 群友狀態同步,還能采用按需拉取的優化方式,進一步降低服務端壓力;
  • “消息風暴擴散系數”是指一個消息發出時,變成N個消息的擴散系數,這個系數一定程度上決定了技術采用推送還是拉取;

知道為什么,一個群最多500人了吧?

知其然,知其所以然。

思路比結論更重要。

責任編輯:趙寧寧 來源: 架構師之路
相關推薦

2023-01-06 07:37:08

JavaScript技巧t性能

2020-06-12 10:12:07

蘋果 iOS微信

2016-11-15 15:38:59

2019-10-21 08:16:17

邊緣計算數據安全網絡安全

2021-01-22 15:33:58

iOS微信iPhone

2025-10-31 01:00:00

2021-01-24 08:20:55

微信微信8.0.1移動應用

2021-01-05 07:00:53

微信隱藏功能移動應用

2021-09-27 05:27:21

微信微信狀態騰訊

2020-02-17 15:14:43

計算機十進制二進制

2025-05-28 08:20:00

無線網絡ACAP

2021-01-13 11:48:18

數據分析供應鏈管理主管

2021-01-30 07:51:59

微信微信8.0騰訊

2024-06-11 14:30:18

2020-07-22 18:04:00

VueAPI共享

2020-09-15 06:13:05

Vue.jsJavaScript框架

2020-07-27 15:06:14

微信張小龍焦慮

2021-05-10 14:53:22

微信技巧小程序

2014-07-23 15:44:00

微盟SaaS

2013-08-08 10:13:25

微信
點贊
收藏

51CTO技術棧公眾號

亚洲精品一区二区三区中文字幕 | 亚洲免费视频一区| 波多野洁衣一区| 黄网站色欧美视频| 樱空桃在线播放| 日韩国产一区二区| 久久精品亚洲精品| 国产嫩草一区二区三区在线观看| 日韩高清不卡| 国产精品影视在线观看| 成人国产精品久久久久久亚洲| 中文字幕 在线观看| 免费看日韩精品| 欧美猛男超大videosgay| 99草草国产熟女视频在线| 日韩中文字幕av电影| 欧美老女人第四色| 日本中文视频| 欧美理论视频| 久久亚洲精品中文字幕冲田杏梨| 日韩人妻一区二区三区蜜桃视频| 国产电影一区二区在线观看| ****av在线网毛片| 久久午夜影视| 亚洲女同ⅹxx女同tv| www.日本三级| 91短视频版在线观看www免费| 欧美**vk| 色噜噜狠狠狠综合曰曰曰| www在线观看播放免费视频日本| 亚洲欧美一区二区三区久本道91| 日本福利视频一区| 日韩中文字幕| 国产精品毛片大码女人| 高清欧美一区二区三区| 国产不卡视频| 国产午夜亚洲精品理论片色戒| 波多野结衣 作品| 免费高清成人在线| 一区二区免费在线视频| 日韩黄色三级在线观看| 亚洲成人激情在线观看| a级影片在线| 日韩欧美久久久| 免费在线中文字幕| 亚洲第一区第一页| 捆绑调教日本一区二区三区| 国产精品1区2区3区| 欧美激情图片区| 国产精品久久久久久久久免费高清 | 欧美变态挠脚心| 久久久亚洲国产| 丁香五月缴情综合网| **欧美日韩vr在线| 久久精品99久久无色码中文字幕| 成人黄色在线播放| 欧美日韩岛国| 久久99精品国产99久久| 日韩精品午夜视频| 99久久免费观看| 欧美韩国日本综合| 在线视频资源站| 欧美一区二区三区四区久久| 最新欧美色图| 久99久在线视频| 日韩欧美一区二区三区免费看| 国产 高清 精品 在线 a| 三级一区在线视频先锋 | 国产精品国内免费一区二区三区| 成人激情免费在线| 亚洲综合激情| 日韩一级黄色av| 天堂va在线高清一区| 日韩免费不卡av| 涩涩视频在线播放| 中文字幕亚洲专区| 日韩三级视频| 精品日本一区二区三区| 国模一区二区三区白浆| 久久久久国产一区| 欧美日韩在线播放一区| www日韩视频| 亚洲一级不卡视频| 在线观看成人免费| 中文字幕av一区二区三区| 头脑特工队2在线播放| 亚洲第一精品久久忘忧草社区| 国产精品久久免费视频 | 欧美大片免费观看| 毛片大全在线观看| 久久精品国产欧美亚洲人人爽| 日韩精品一区二区三区免费观影| 日韩精品一区二区三区丰满| 91在线一区二区三区| 三级在线播放| 自拍视频国产精品| 久久亚洲成人| 50度灰在线观看| 欧美日韩国产色视频| 成人黄色免费短视频| 国产精品免费久久久久久| 日本不卡在线视频| 97影院在线观看| 中日韩美女免费视频网址在线观看 | 97国产一区二区| 国产免费人做人爱午夜视频| 欧洲精品中文字幕| 97影院理论| 日韩一级免费观看| 国产h在线观看| 同产精品九九九| 欧美91看片特黄aaaa| 91影视免费在线观看| 欧美自拍一区| 日韩精品久久久免费观看| 综合婷婷亚洲小说| 超碰91在线观看| 精品久久久久香蕉网| 日本午夜精品久久久| 国产精品久久成人免费观看| 国产欧美一区二区精品性色| 小处雏高清一区二区三区| 手机看片日韩国产| 成人免费视频国产在线观看| 福利视频午夜| 91激情五月电影| 米奇777四色精品人人爽| 精品国产亚洲一区二区三区| 成人黄色av网站| 日韩在线免费av| 欧美亚洲国产激情| 免费特级黄色片| 日韩欧美中文字幕公布| 欧美肥老太太性生活| 亚洲精品怡红院| 在线午夜精品自拍| 精品一区二区三区视频在线观看| 国产三级在线观看| 国产精品久久久久久中文字| 国产免费观看久久| 日本免费在线一区| 亚洲日本精品| 欧美一级xxx| 亚洲成人资源| 一本大道香蕉久在线播放29| 日本人妖一区二区| 国产成人精品在线播放| 久久蜜桃av一区二区天堂 | 久久91导航| 精品国产电影| 一本久久精品一区二区| 成人一级毛片| 成人a视频在线| 国产成人av在线| 亚洲欧美国产高清| 女人抽搐喷水高潮国产精品| 一级在线免费视频| 美女av一区二区三区| 精品网站999| 一区不卡字幕| 亚洲成人久久久久| 在线精品观看| 黄色网在线播放| 亚洲一二三在线| 国产一区在线视频| 国产在线精彩视频| 特级毛片在线免费观看| 日韩精品在线观看一区| 精品亚洲aⅴ乱码一区二区三区| 不卡专区在线| 免费看欧美一级片| 精品综合久久久久久97| 国产精品另类一区| 成人精品影院| 波多野结衣在线影院| 日产精品一线二线三线芒果| 日韩激情在线视频| 久久91麻豆精品一区| 三上悠亚在线观看二区| 亚洲专区在线视频| 日韩视频免费观看高清完整版| 视频一区中文字幕国产| 午夜伦理福利在线| 日本三级免费观看| 日本一区二区不卡| 在线观看日韩国产| 日精品一区二区三区| 成人啊v在线| 91福利电影| 国严精品久久久久久亚洲影视| 亚洲成人在线网| 91啪九色porn原创视频在线观看| 日韩在线免费播放| 青青草原亚洲| 中文字幕自拍vr一区二区三区| 中文字幕免费一区| 欧美视频在线观看| 日韩另类视频| 日本视频在线观看一区二区三区| 欧美自拍资源在线|