[發明專利]一種適用于高并發場景的TCP通道管理系統及其方法在審
| 申請號: | 201810097944.3 | 申請日: | 2018-01-31 |
| 公開(公告)號: | CN108459915A | 公開(公告)日: | 2018-08-28 |
| 發明(設計)人: | 馬漢鑄 | 申請(專利權)人: | 中電福富信息科技有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 福州君誠知識產權代理有限公司 35211 | 代理人: | 林世庭 |
| 地址: | 350000 福建省福州*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 接入網關 消息中間件 業務服務 場景 鏈路 并發 檢測器 數據分析服務 網絡通信技術 多線程技術 合法性驗證 客戶端接入 客戶端連接 并發應用 分析服務 管理服務 管理系統 連接數據 連接消息 任務隊列 異步通信 鏈路表 任務池 中間件 超時 解耦 引入 管理 通信 環節 | ||
本發明公開一種適用于高并發場景的TCP通道管理方法,其包括接入網關、消息中間件、數據分析服務和TSP業務服務,多個客戶端連接接入網關,接入網關連接消息中間件,消息中間件分別連接數據分析服務和TSP業務服務,接入網關提供客戶端接入、鏈路合法性驗證以及超時管理服務。本發明采用epoll異步通信模型,引入任務池、鏈路表管理、鏈路檢測器,結合任務隊列池和多線程技術,解耦通信環節。本發明適用于高并發應用場景特點及網絡通信技術背景,充分考慮各技術優缺點,揚長避短。
技術領域
本發明涉及電信通訊領域,尤其涉及一種適用于高并發場景的TCP通道管理系統及其方法。
背景技術
在進行網絡編程時,同步(Sync)/異步(Async),阻塞(Block)/非阻塞(Unblock)四種常見調用方式,同步IO和異步IO的區別就在于數據訪問的時候進程是否阻塞;阻塞IO和非阻塞IO的區別就在于,應用程序的調用是否立即返回;select、epoll是Linux 內核提供多路I/O復用的解決方案,select本質上是通過設置或者檢查存放fd標志位的數據結構來進行下一步處理,缺點1是單個進程可監視的fd數量被限制,即能監聽端口的大小有限;缺點2是socket進行掃描時是線性掃描,即采用輪詢的方法,效率較低;epoll實現是根據是內核每個fd上的callback函數來實現的,只有活躍的socket才會主動調用callback,所以在活躍socket較少的情況下,使用epoll沒有select的線性下降的性能問題,但是所有socket都很活躍的情況下,可能會有性能問題。
發明內容
本發明的目的在于克服現有技術的不足,提供一種適用于高并發場景的TCP通道管理系統及其方法,充分利用epoll高性能特點,滿足高并發應用場景需求。
本發明采用的技術方案是:
一種適用于高并發場景的TCP通道管理系統,其包括接入網關、消息中間件、數據分析服務和TSP業務服務,多個客戶端連接接入網關,接入網關連接消息中間件,消息中間件分別連接數據分析服務和TSP業務服務,接入網關提供客戶端接入、鏈路合法性驗證以及超時管理服務;
接入網關包括接收器、socket管理表、任務池和鏈路檢測器,接收器用于啟動監聽服務、接受客戶端連接請求、加入epoll通訊模型以及藉由epoll事件監測socket鏈路操作;socket管理表用于存儲客戶端與接入建立的socket鏈路信息;任務池用于藉由epoll事件監測線程、根據分發策略分配放入任務隊列的分發事件處理、任務消費線程處理和解析業務邏輯通過業務線程處理;鏈路檢測器用于定時的鏈路管理、監測到通道狀態、以事件的方式通知消息處理模塊實例以及將消息處理實例以任務的形式分發到任務隊列。
進一步地,所述socket鏈路信息包括socket鏈路唯一標識和socket管理信息。每個socket鏈路都有一個唯一標識OID作為socket管理表map成員key值,map的value值包含socket的管理信息。
進一步地,所述socket的管理信息包括鏈路狀態、時間戳、句柄和流水號。
進一步地,所述鏈路管理包括鏈路心跳和鏈路合法性驗證超時管理。
本發明還公開了一種適用于高并發場景的TCP通道管理方法,其包括以下步驟:
S1,初始化全局數據,創建任務隊列池,綁定處理線程,實例化epoll實現類、接收器;
S2,接收器啟動監聽服務,由一個線程循環接收epoll事件;
S3,接收器處理接受連接事件,創建接入socket實例,并socket鏈路信息加入socket管理表,
S4,處理讀寫事件根據socket句柄分配放入任務隊列,由讀寫線程去處理,解析業務邏輯由業務線程去處理;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中電福富信息科技有限公司,未經中電福富信息科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810097944.3/2.html,轉載請聲明來源鉆瓜專利網。





