成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

feed留,單聊群聊,系統通知,狀態同步,到底是推還是拉?

開發 開發工具 前端
看到產品功能,思考后面的技術實現,其實是很有意思的一件事。今天拋一個話題,根據業務現象,一起討論其后端實現是推還是拉?

今天拋一個話題,根據業務現象,一起討論其后端實現是推還是拉?

[[228278]]

一、feed流

可以理解為一個發布訂閱業務,典型業務是微博(朋友圈)。你關注了姚晨的微博,姚晨發布了消息,你的主頁能看到她***發布的消息,這個場景是推送,還是拉取呢?

畫外音:微博是弱關系,關注無需對方同意,粉絲可以無上限;朋友圈是強關系,好友需要對方同意,好友個數有上線。

如果推送,姚晨發布消息的時候,要把消息ID投遞到所有粉絲的主頁消息隊列里,推送量巨大。

如果拉取,一來主頁消息無法實時更新,二來每次刷新動作非常復雜:

  • 拉取你關注人的list
  • 拉取這些人的消息list
  • 對于這些人的這些消息進行rank處理,例如按照時間排序
  • 還無法對主頁進行緩存,因為只要有關注人發布消息,主頁內容就會變化
  • 還得考慮“不看誰的消息”,以及“消息不給誰看”
  • ...

是不是覺得有點煩?如果你是架構師,你會怎么做?

二、聊天消息

聊天消息又分為單聊和群聊,典型的業務是微信。和朋友小窗溝通是單聊,群內扯淡是群聊。

  • 單聊,很容易想到是服務器推送,但瀏覽器里的聊天工具JS只能使用http式的request - response協議,又能不能保證消息的實時性呢?
  • 群聊,一個群500個人,有人在線,有人離線,到底是推送,還是拉取呢?

如果是推送,1條消息將轉變為500條消息,系統壓力會異常之大。

如果是拉取,消息的實時性又該如何保障呢?

還有一個坑爹的需求,“釘釘”的群聊天消息“已讀回執”,這個需求簡單描述是:對于每一條你發出的每一群消息,你能夠看到,多少人已讀,多少人未讀。這個群消息已讀回執,猜猜看,又是怎么實現的呢?

三、系統通知

系統消息聽上去比較泛,典型的業務是QQ的登錄廣告彈窗,以及登錄后的右下角廣告提示。

  • QQ每天***登錄后的新聞彈窗:拉取?第二次登錄卻又沒有。
  • QQ運行過程中的QQ彈窗廣告:推送?一次推送幾千萬條,會不會系統抖動?

或許,真實的實現方式或許與我們想的并不一樣。

玩桌面QQ時,收到過“你的好友XXOO登錄了”的彈窗提示么?這是一個好友登錄/登出狀態的客戶端同步。同理,群有500人,每個群友的在線/不在線狀態又是怎么實現同步的呢?

推送?那一個用戶登錄退出都要推送N個好友?M個群友?

拉取?如何保證好友狀態,群友狀態的實時性?

畫外音:好友/群友狀態一致性是非常復雜的,移動的時代,索性引入“一律在線”的概念,微信的好友就不存在所謂“頭像亮”和“頭像灰”的概念了,客戶端狀態同步這一塊復雜性有所降低。

看到產品功能,思考后面的技術實現,其實是很有意思的一件事。

究竟是推,還是拉?大伙怎么看。

還有其他業務場景的疑惑,也歡迎評論提問,有價值的問題,5月份逐條解答。

畫外音:自從有了群消息已讀回執,我再也不能裝作不在線,領導的消息沒看到了。

【本文為51CTO專欄作者“58沈劍”原創稿件,轉載請聯系原作者】

戳這里,看該作者更多好文

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2016-11-01 15:16:52

QQ狀態即時通訊

2015-04-21 09:20:40

SwfitObject—C

2018-09-26 14:17:00

編程語言JavaPython

2017-08-09 08:43:02

公有云趨勢聲勢

2011-09-05 10:30:51

重構代碼庫業務模型

2018-10-09 15:26:19

JavaPython語言

2024-03-28 13:13:00

Htmx前端開發框架

2024-12-17 08:30:01

2014-11-17 10:03:23

OpenStack

2020-12-22 21:24:45

在線狀態服務端狀態狀態同步

2023-10-10 16:03:48

數字化信息化

2022-08-18 23:13:25

零信任安全勒索軟件

2014-06-05 14:46:05

設計設計師

2021-12-09 20:16:26

無線核心網傳輸

2020-08-31 19:19:27

TCPUDP視屏面試

2020-08-31 19:17:24

Python強類型語言弱類型語言

2013-11-18 10:34:00

企業移動化移動信息化

2024-06-17 00:00:02

前端技術JavaScript

2019-01-31 10:15:14

群聊單聊消息

2010-09-01 09:25:39

Unix系統遷移
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美久久国产 | 在线欧美亚洲 | 日韩视频国产 | 99久久亚洲 | 亚洲精品一区二三区不卡 | 日韩在线视频一区二区三区 | 免费中文字幕 | 日韩国产高清在线观看 | 欧美一级大片免费看 | 精品一区二区三区四区五区 | 久久久网| 日韩成人av在线 | 亚洲精品美女在线观看 | 国内精品久久久久久影视8 最新黄色在线观看 | 日韩精品一 | 中文字幕在线第一页 | 久久最新网址 | 国产羞羞视频在线观看 | 久久精品二区 | 国产综合视频 | 亚洲视频在线一区 | 超碰精品在线观看 | 久久国产精品视频观看 | 日韩精品一区二区三区视频播放 | 国产成人精品一区二三区在线观看 | 一区二区三区亚洲精品国 | 中文字幕日韩一区二区 | 亚洲欧美综合 | 久热精品在线播放 | 91综合在线观看 | 天色综合网| 欧美一级二级视频 | 久久久久九九九女人毛片 | 欧美一级二级在线观看 | 国产精品毛片一区二区三区 | 午夜影院操 | 欧美无乱码久久久免费午夜一区 | 久久一起草 | 色综合色综合色综合 | 国产成人精品a视频 | 国产精品久久久久久吹潮日韩动画 |