總結送免費學習資料(包含視頻、技術學習路線圖譜、文檔等)
引用一段網上的描述:“InstantMessaging(即時通訊、實時傳訊)的縮寫是IM,這是一種可以讓使用者在網絡上建立某種私人聊天室(chatroom)的實時通訊服務。目前在互聯網上受歡迎的即時通訊軟件包括QQ、百度HI、新浪UC、MSN Messenger等。“
2服務器端2.1系統框架總結送免費學習資料(包含視頻、技術學習路線圖譜、文檔等)
下面所有服務器組件:
内存DB:主要存儲人員狀态,服務器負載信息
人員信息
服務器信息
總結送免費學習資料(包含視頻、技術學習路線圖譜、文檔等)
服務器類型:
1 代表邏輯服務器
2 代表音視頻
3 代表聊天服務器
4 代表群聊服務器
中心服務器 主要功能維護每個單獨服務器的狀态,以及即時調整負載,并且清理内存DB服務器負載信息等等
DBServer、DB(做負載)以下為簡圖
DB使用負載服務器具體方案待定。
主要功能處理登錄時候拉去信息的壓力,緩解DB讀取和存入壓力。
OfflineMsgDBserverr、DB(做負載)以下為簡圖
DB使用負載服務器具體方案待定。
主要功能存入離線消息和拉去離線消息,緩解DB讀取和存入壓力。
登錄網關服務器
主要是每個客戶端第一次連接後返回一個邏輯服務器,沒有其他邏輯。并發很大,這個都是短連接。登錄網關的的邏輯負載通過内存db獲得 ,沒30苗調整一次。
總結送免費學習資料(包含視頻、技術學習路線圖譜、文檔等)
邏輯服務器
主要處理登錄和聊天等
1. 登錄過程
客戶端從網關服務器獲得邏輯服務器IP和PORT。發送登錄消息,内存數據通過相應算法找到壓力較小DBserver獲取登錄信息。然後返回給客戶端組織結構,并且向fflineMsgDBserver發送獲取離線消息。最後想内存DB更新人員狀态以及所在服務器信息。
2. 聊天消息(跨服務)
用戶1 登錄在邏輯服務器A上
用戶2登錄在邏輯服務器B上
用戶1發起聊天發送到 邏輯A服務器上,邏輯服務器A通過内存DB找到用戶2所在服務如果未找到 ,作為離線消息。如果找到向相應服務器發送消息。并且轉發到用戶2手上。
聊天服務器、群組服務器等基本邏輯相同
用戶1 登錄在邏輯服務器A上
用戶2登錄在邏輯服務器B上
總結送免費學習資料(包含視頻、技術學習路線圖譜、文檔等)
更多學習資料(包含視頻、技術學習路線圖譜、文檔等)
技術點包含了C/C ,Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒體,CDN,P2P,K8S,Docker,TCP/IP,協程,DPDK等方面。
後台私信《資料》免費領取
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!