Realtime chat, sync & collaboration
9 題
聊天系統
設計一款 WhatsApp 風格行動通訊 App 的用戶端架構——連線管理、訊息狀態、離線儲存與加密,全都必須在不穩定的行動網路下撐得住。
預覽Chat Service
為數億同時在線使用者設計一套聊天產品背後的後端基礎設施——有狀態的連線伺服器、訊息儲存,以及群組扇出。重點在基礎設施:連線機群、儲存 schema,以及大規模下的扇出。
預覽Collaborative Shopping
設計一套協作購物體驗:多人即時共用同一個購物車,可以並行加入與移除商品,並由指定的其中一位參與者代表整個群組結帳。
預覽檔案同步系統
設計一套雲端檔案儲存與同步服務,支援大型檔案上傳,並讓檔案在多個裝置與共享資料夾之間保持同步。
免費指南即時通訊系統
設計一套即時通訊系統,在大規模使用下提供低延遲訊息傳遞、訊息順序保證與多裝置同步,並處理在線狀態、送達回條及加密。
免費指南協作文件系統
設計 協作文件系統 的即時協作編輯——多位使用者同時在同一份文件裡打字,並看到彼此的編輯正確收斂到一致。
預覽雲端硬碟
把 雲端硬碟 設計成一套有權限控管的檔案平台——資料夾階層、共用雲端硬碟,以及能橫跨數十億檔案與第三方整合的存取控制。
預覽Real-time Multiplayer Game
為即時多人遊戲設計一套權威伺服器 (authoritative server)。涵蓋配對 (matchmaking)、以 tick 為單位的權威模擬、client-side prediction 與 reconciliation、低延遲的 UDP/WebSocket 狀態同步、lag compensation、防作弊,以及區域伺服器。
預覽Live Comments
設計一套即時留言系統,把單一直播事件的留言即時扇出給數百萬名同時在線的觀眾。涵蓋 pub/sub 扇出、熱分區與名人效應處理、背壓、洪峰下的抽樣與速率整形、順序與吞吐量的取捨,以及短暫式(ephemeral)與持久式儲存。
預覽