B站彈幕系統架構——GOIM解讀


架構圖

 

 

 

說明

1.logic啟動http服務器, 接受http請求,用於將數據推送到kafka以及獲取在線用戶信息,websocket身份校驗

2.comet組件起動webdocket/tcp服務, 管理連接, 並負責將數據推送至指定連接

3. job組件訂閱指定kafka指定頻道的消息信息, 開啟管道監聽(將獲得的數據推送到comet當中某個鏈接上)

  從discovery當中找到comet組件

4. discovery負責監控以上組件的活動狀態

代碼結構:

由於作者應該是修改了項目文件目錄結構,導致按照現在的readme文檔運行是找不到對應的目錄的。

 

 說明:(個人理解,不一定准確。歡迎指正)

goim/api:主要定義了comet和logic模塊用到的protocal buffer協議。

goim/benchmarks:壓測演示。

goim/cmd:這一部分對應了作者GitHub上readme文檔的運行示例部分(如圖)

 

 少了個router文件夾。

goim/docs:分模塊文檔。

goim/examples:一個前端演示demo,具體實現了什么沒看。

 

 這三個分別是,基礎模塊包,依賴包,外部依賴運行腳本。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM