2013年即時通訊系統設計概要
本文導讀:客戶機的功能模塊先調用協議解析模塊對消息進行解析,再通過底層網絡通信模塊進行消息的傳遞,主要組成模塊為登陸模塊和文件傳輸模塊文字消息通信模塊狀態更新模塊以及本地數據管理模塊。
在即時通訊系統客戶端需要提供友善方便的用戶界面,要求服務器要求能夠遠程配置并動態熱生效,并且能夠響應請求停止和重新啟動、而且一旦出現事故之后能夠恢復前次狀態,重啟并恢復前次狀態過程的總時延不大于5分鐘,此外對于服務器穩定性和響應速度傳送時間系統的可升級性和可移植性也有要求對于響應速度是,在網絡無故障的前提下,對客戶機發送的消息包平均響應時間不大于1秒,服務器能夠承受至少10000個用戶同時在線,最大響應延遲不大于5秒、提供遠程控制,自動故障修復,服務器要求最小平均無故障運行時間應大于400小時,最大故障修復時間不大于2小時,系統可升級性中,要求客戶機提供自動動態下載升級,而且服務器支持遠程升級,系統可移植性要求客戶機能運行在所有Windows系統平臺下,數據傳送時間,數據封包和傳送,平均時延小于2秒,最大響應時間小于2秒,數據庫平均響應時間小于100毫秒。
從即時通訊系統結構框架來看,整個系統由服務器和文字通信終端組成的文字通訊終端也即客戶機通過服務器實現狀態通知,實現PZP文字通信聊天功能,文件發送功能、服務器實現客戶信息查詢,信息轉發,登錄身份驗證,狀態通知,文件傳送路由等功能,主要由通訊路由服務器和信息查詢服務器文字消息主服務器等三個服務器程序組成,三個服務器之間通過TCP連接建立通訊鏈路,每個服務程序可以單獨運行在相互獨立的計算機上。
所有靜態數據用數據庫保存和組織數據庫中共有三個表單:保存各個服務器的當前負載指數及其狀態的服務器負載表,保存用戶的基本信息和狀態信息的用戶基本信息表,暫存用戶發送給離線用戶的消息的暫存消息表。
客戶機的功能模塊先調用協議解析模塊對消息進行解析,再通過底層網絡通信模塊進行消息的傳遞,主要組成模塊為登陸模塊和文件傳輸模塊文字消息通信模塊狀態更新模塊以及本地數據管理模塊。
主模塊主要負責啟動服務,網絡連接接收模塊的主要功能是監聽TCP端口,為客戶機創建連接,接受客戶機的連接。
遠程管理模塊最為復雜,主要負責接受管理員連接,監聽遠程管理服務端口,創建線程提供服務,主要包含以下方面的功能,負責支持用戶以Telnet的方式連接上主服務器進行操作;修改服務器各項配置參數,在服務器不中止服務的前提使更改服務器更改的配置生效;查詢服務器當前運行狀態和運行參數;管理服務器本地內存數據結構和數據文件;通過數據庫管理模塊的接口查詢目的用戶的當前狀態;通過數據維護模塊的接口更新相關數據結構;處理心跳消息,通過數據維護模塊的接口更新相關數據結構;處理文件傳送中轉請求,判斷是否滿足相關規則;調用數據維護模塊接口函數獲得數據庫連接。







