[發(fā)明專利]分布式系統(tǒng)中提升網(wǎng)絡(luò)IO讀寫性能的方法在審
| 申請?zhí)枺?/td> | 202010739220.1 | 申請日: | 2020-07-28 |
| 公開(公告)號: | CN111897496A | 公開(公告)日: | 2020-11-06 |
| 發(fā)明(設(shè)計)人: | 南坤;謝赟;韓欣;孫卓峰 | 申請(專利權(quán))人: | 上海德拓信息技術(shù)股份有限公司 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06;G06F9/48;G06F9/54;H04L29/06;H04L29/08 |
| 代理公司: | 上海中外企專利代理事務所(特殊普通合伙) 31387 | 代理人: | 孫益青 |
| 地址: | 200233 上海*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 分布式 系統(tǒng) 提升 網(wǎng)絡(luò) io 讀寫 性能 方法 | ||
本申請公開了一種分布式存儲系統(tǒng)的網(wǎng)絡(luò)IO讀寫方法,其包括如下步驟:S1:設(shè)立事件中心預定義四類消息事件,所述四類消息事件包括FD類事件,定時器類事件,外部事件和輪詢事件;S2:工作線程啟動,事件中心對消息事件進行格式分類,并基于格式分類結(jié)果在消息事件上標記格式基類;所述格式基類包括數(shù)據(jù)消息,心跳消息,集群消息和回復消息;S3:消息管理器將消息事件分發(fā)給消息分發(fā)器;S4:消息分發(fā)器基于格式基類對消息事件設(shè)立優(yōu)先級隊列;S5:基于S4所得優(yōu)先級隊列對消息事件進行管理。本申請能夠?qū)崿F(xiàn)基于角色的事件中心及不同消息類型實現(xiàn)優(yōu)先級隊列管理,并分離單個鏈接請求和響應,最終降低單個鏈接的處理延遲。
技術(shù)領(lǐng)域
本申請屬于數(shù)據(jù)通信技術(shù)領(lǐng)域,具體來說涉及一種基于分布式系統(tǒng)的IO讀寫方法。
背景技術(shù)
隨著大數(shù)據(jù)、云計算、物連網(wǎng)以及5G等新技術(shù)的發(fā)展,電信、互聯(lián)網(wǎng)、政企、醫(yī)療等行業(yè)應用的日新月異,帶來的海量數(shù)據(jù)快速增長對傳統(tǒng)的存儲系統(tǒng)造成諸多挑戰(zhàn)。在主流的分布式存儲系統(tǒng)中,前端網(wǎng)絡(luò)和后端網(wǎng)絡(luò)為了各自集群的硬件通用一致性,通常采用基于TCP/IP的以太網(wǎng)進行數(shù)據(jù)交換。另外RDMA協(xié)議,DPDK協(xié)議都是新的數(shù)據(jù)中心等場景中的解決方案。分布式系統(tǒng)為了解決分布式一致性問題,通常都會采用副本和糾刪碼的策略,而這就要求客戶端與服務端遵循一定的數(shù)據(jù)復制通信規(guī)則。常見的有客戶端路由和服務端路由。目前業(yè)界主流的基于事件的異步通信架構(gòu),遵循“一個線程一個循環(huán)”的線程模型,然而分布式存儲中由于磁盤IO、網(wǎng)絡(luò)IO延遲差異以及IO路徑長的問題,如果依賴單線程同時處理多個鏈接的監(jiān)聽、請求、應答,以及消息隊列鎖機制,會導致單線程各個鏈接中網(wǎng)絡(luò)IO消息隊列出現(xiàn)緩存。同時網(wǎng)絡(luò)請求數(shù)據(jù)包攜帶大量的數(shù)據(jù)以及網(wǎng)絡(luò)響應數(shù)據(jù)包在組包時頻繁臨時分配內(nèi)存,產(chǎn)生幾十倍的網(wǎng)絡(luò)延遲。無法發(fā)揮高速以太網(wǎng)卡的性能。因此如何開發(fā)出一種新型的基于分布式系統(tǒng)的IO讀寫方法,能夠降低單個鏈接的處理延遲,使得前端網(wǎng)絡(luò)及整個后端網(wǎng)路的整體性能線性增長,是本領(lǐng)域技術(shù)人員需要研究的方向。
申請內(nèi)容
本申請的目的是提供一種基于分布式系統(tǒng)的IO讀寫方法,能夠?qū)崿F(xiàn)基于角色的事件中心及不同消息類型實現(xiàn)優(yōu)先級隊列管理,降低單個鏈接的處理延遲。
其采用的技術(shù)方案如下:
一種分布式存儲系統(tǒng)的網(wǎng)絡(luò)IO讀寫方法,其包括如下步驟:S1:設(shè)立事件中心預定義四類消息事件,所述四類消息事件包括FD類事件,定時器類事件,外部事件和輪詢事件;S2:工作線程啟動,事件中心對消息事件進行格式分類,并基于格式分類結(jié)果在消息事件上標記格式基類;所述格式基類包括數(shù)據(jù)消息,心跳消息,集群消息和回復消息;S3:消息管理器將消息事件分發(fā)給消息分發(fā)器;S4:消息分發(fā)器基于格式基類對消息事件設(shè)立優(yōu)先級隊列;S5:基于S4所得優(yōu)先級隊列對消息事件進行管理。
優(yōu)選的是,上述分布式存儲系統(tǒng)的網(wǎng)絡(luò)IO讀寫方法中,步驟S5中基于QOS機制,在DT_m_dispatchers中設(shè)計優(yōu)先級隊列。
更優(yōu)選的是,上述分布式存儲系統(tǒng)的網(wǎng)絡(luò)IO讀寫方法中,步驟S4包括:S41:讀取消息事件上標記的格式基類,若消息事件為數(shù)據(jù)消息則跳轉(zhuǎn)至S42,若消息事件為心跳消息則跳轉(zhuǎn)至S43,若消息事件為集群消息則跳轉(zhuǎn)至S44,若消息事件為回復消息則跳轉(zhuǎn)至S45;S42:在寫管道中啟動寫工作線程,將消息事件編碼后發(fā)送至指定消息服務進程,跳轉(zhuǎn)至S5;S43:在寫管道中啟動寫工作線程,將消息事件編碼后投遞到消息優(yōu)先級隊列并發(fā)送外部事件、在下次循環(huán)中發(fā)送至指定消息服務進程,跳轉(zhuǎn)至S5;S44:在寫管道中啟動寫工作線程,將消息事件編碼后投遞到消息優(yōu)先級隊列并發(fā)送外部事件、在下次循環(huán)中發(fā)送至指定消息服務進程,跳轉(zhuǎn)至S5;S45:在讀管道中啟動讀工作線程,對消息事件編碼后發(fā)送至指定客戶端服務進程,跳轉(zhuǎn)至S5。
更優(yōu)選的是,上述分布式存儲系統(tǒng)的網(wǎng)絡(luò)IO讀寫方法中,步驟S42包括:S421:向注冊好的寫管道中寫入喚醒字符,喚醒寫事件或使寫工作線程檢測到寫事件;S422:寫工作線程按照指定協(xié)議編碼對消息事件做編碼處理;S423:將編碼后的消息通過發(fā)送消息接口發(fā)到指定消息服務進程。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海德拓信息技術(shù)股份有限公司,未經(jīng)上海德拓信息技術(shù)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010739220.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字數(shù)據(jù)處理
G06F3-00 用于將所要處理的數(shù)據(jù)轉(zhuǎn)變成為計算機能夠處理的形式的輸入裝置;用于將數(shù)據(jù)從處理機傳送到輸出設(shè)備的輸出裝置,例如,接口裝置
G06F3-01 .用于用戶和計算機之間交互的輸入裝置或輸入和輸出組合裝置
G06F3-05 .在規(guī)定的時間間隔上,利用模擬量取樣的數(shù)字輸入
G06F3-06 .來自記錄載體的數(shù)字輸入,或者到記錄載體上去的數(shù)字輸出
G06F3-09 .到打字機上去的數(shù)字輸出
G06F3-12 .到打印裝置上去的數(shù)字輸出
- 網(wǎng)絡(luò)和網(wǎng)絡(luò)終端
- 網(wǎng)絡(luò)DNA
- 網(wǎng)絡(luò)地址自適應系統(tǒng)和方法及應用系統(tǒng)和方法
- 網(wǎng)絡(luò)系統(tǒng)及網(wǎng)絡(luò)至網(wǎng)絡(luò)橋接器
- 一種電力線網(wǎng)絡(luò)中根節(jié)點網(wǎng)絡(luò)協(xié)調(diào)方法和系統(tǒng)
- 一種多網(wǎng)絡(luò)定位方法、存儲介質(zhì)及移動終端
- 網(wǎng)絡(luò)裝置、網(wǎng)絡(luò)系統(tǒng)、網(wǎng)絡(luò)方法以及網(wǎng)絡(luò)程序
- 從重復網(wǎng)絡(luò)地址自動恢復的方法、網(wǎng)絡(luò)設(shè)備及其存儲介質(zhì)
- 神經(jīng)網(wǎng)絡(luò)的訓練方法、裝置及存儲介質(zhì)
- 網(wǎng)絡(luò)管理方法和裝置





