[發明專利]用于處理遠程過程調用請求的方法及系統無效
| 申請號: | 201210037171.2 | 申請日: | 2012-02-17 |
| 公開(公告)號: | CN102594891A | 公開(公告)日: | 2012-07-18 |
| 發明(設計)人: | 唐宏偉;霍志剛;余璜;馮圣中 | 申請(專利權)人: | 中國科學院計算技術研究所 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;H04L12/56 |
| 代理公司: | 北京泛華偉業知識產權代理有限公司 11280 | 代理人: | 王勇 |
| 地址: | 100190 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 處理 遠程 過程 調用 請求 方法 系統 | ||
1.一種用于處理遠程過程調用請求的方法,所述方法包括:
步驟1)接收來自客戶端的遠程過程調用(RPC)請求;
步驟2)將所收到的RPC請求以流水線的方式進行處理;
其中,所述流水線由多個流水段構成,每個流水段包括一個或多個線程,每個流水段中的每個線程處理的是相同的子任務,不同的流水段中的線程處理的是不同的子任務,前一個流水段的輸出作為后一個流水段的輸入,各個流水段的子任務組合起來共同完成對來自客戶端的RPC請求的處理。
2.根據權利要求1所述的方法,其中,所述流水線中的流水段的劃分應符合下述條件:
各個流水段的子任務對系統資源的需求應盡量不同;
每個流水段的子任務之間沒有重疊,且各個流水段的子任務組合起來應完成對來自客戶端的RPC請求的處理過程。
3.根據權利要求1或2所述的方法,其中所述流水線包括5個流水段:
流水段1的子任務為與RPC客戶端建立通信連接;
流水段2的子任務為從所建立的連接接收RPC請求分片;
流水段3的子任務為將所接收的RPC請求的分片組合成完整的RPC請求包;
流水段4的子任務為基于RPC請求包對RPC請求進行處理;
流水段5的子任務為將對RPC請求處理的結果作為應答返回到客戶端。
4.根據權利要求3所述的方法,其中所述步驟2)包括以下步驟:
將收到的來自客戶端的RPC請求提交給流水段1中的線程進行處理;
流水段1中的線程與該RPC客戶端建立通信連接,并在將連接標識符傳遞到流水段2后,返回繼續處理其他的RPC請求;
流水段2中的線程基于連接標識符來從將所建立的連接接收RPC請求分片,在將所接收的分片傳遞到流水段3后,返回繼續處理其他的RPC請求;
流水段3中的線程將所接收的RPC請求的分片組合成完整的RPC請求包并傳遞到流水段4,然后返回繼續處理其他的RPC請求;
流水段4中的線程基于RPC請求包對RPC請求進行處理,并將處理的結果傳遞到流水段5后,返回繼續處理其他的RPC請求;
流水段5中的線程將對RPC請求處理的結果作為應答返回到客戶端后,返回繼續處理其他的RPC請求。
5.根據權利要求1或2所述的方法,其中流水段之間的數據傳遞是通過流水段之間的數據通路來實現的,每個流水段都有一個輸入數據通路和一個輸出數據通路,每個數據通路既是前一個流水段的輸出數據通路也是后一個流水段段的輸入數據通路,每個流水段中的所有線程共享該流水段的輸入數據通路和輸出數據通路。
6.根據權利要求5所述的方法,其中所述數據通路為先進先出隊列。
7.根據權利要求1或2所述的方法,其中每個流水段所包含的線程數量是固定的。
8.根據權利要求1或2所述的方法,還包括動態調整每個流水段所包含的線程數量的步驟。
9.根據權利要求8所述的方法,其中動態調整每個流水段所包含的線程數量的步驟包括:周期性地調整各個流水段中的線程數量,以使得各個流水段具有相同的每線程平均待處理任務數,所述每線程平均待處理任務數是由每個流水段的待處理任務的數量除以該流水段的線程的數量得到的。
10.根據權利要求8所述的方法,其中動態調整每個流水段所包含的線程數量的步驟包括:周期性地調整各個流水段中的線程數量,以使得各個流水段具有相同的每線程平均處理任務時間,所述每線程平均處理任務時間為每個流水段中的線程處理子任務所需的平均處理時間。
11.根據權利要求8所述的方法,其中動態調整每個流水段所包含的線程數量的步驟包括周期性地執行如下操作:
查找流水線中“斷流”的流水段,所述“斷流”流水段為當前正在空閑或者幾近空閑的流水段;
然后,檢查該“斷流”的流水段的直接前驅階段是否產生了瓶頸,所述瓶頸是指該流水段待處理的任務多,而線程數量少,以致無法生產出足夠多的數據以滿足后繼流水段的處理需求;
如果發現了瓶頸,則從最下游的“斷流”流水段中移出一個線程到該產生瓶頸的流水段;否則進一步查看該前驅流水段的前驅,直至找到產生瓶頸的流水段或到達第一個流水段。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院計算技術研究所,未經中國科學院計算技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210037171.2/1.html,轉載請聲明來源鉆瓜專利網。





