[發(fā)明專利]基于半同步半異步和管道過濾器模式的服務(wù)器設(shè)計(jì)方法在審
| 申請(qǐng)?zhí)枺?/td> | 201410391320.4 | 申請(qǐng)日: | 2014-08-11 |
| 公開(公告)號(hào): | CN104219284A | 公開(公告)日: | 2014-12-17 |
| 發(fā)明(設(shè)計(jì))人: | 王成;賴雄鳴;謝維波;緱錦;鄭黎曉;李靜;官威 | 申請(qǐng)(專利權(quán))人: | 華僑大學(xué) |
| 主分類號(hào): | H04L29/08 | 分類號(hào): | H04L29/08;G06F9/52;G06F9/50 |
| 代理公司: | 泉州市文華專利代理有限公司 35205 | 代理人: | 陳智海 |
| 地址: | 362000 福*** | 國(guó)省代碼: | 福建;35 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 同步 異步 管道 過濾器 模式 服務(wù)器 設(shè)計(jì) 方法 | ||
1.一種基于半同步半異步和管道過濾器模式的服務(wù)器設(shè)計(jì)方法,所述基于半同步半異步模式的服務(wù)器包括半異步層、排隊(duì)層及半同步層,所述半異步層接收客戶端的網(wǎng)絡(luò)連接數(shù)據(jù)后,便將網(wǎng)絡(luò)連接數(shù)據(jù)通過所述排隊(duì)層傳遞給所述半同步層,其特征在于:所述方法包括以下步驟:
步驟1、將所述半同步層設(shè)計(jì)成包括復(fù)數(shù)個(gè)數(shù)據(jù)處理模塊,且每一所述數(shù)據(jù)處理模塊均包括一線程池以及一與之關(guān)聯(lián)的消息隊(duì)列;
步驟2、將管道過濾器模式應(yīng)用到半同步層的數(shù)據(jù)處理模塊中,利用管道過濾器模式將一個(gè)復(fù)雜的任務(wù)分解為復(fù)數(shù)個(gè)連續(xù)的分任務(wù),并將每一所述分任務(wù)均交由一對(duì)應(yīng)數(shù)據(jù)處理模塊進(jìn)行處理,處理的最終結(jié)果則通過所述排隊(duì)層及半異步層返回給客戶端。
2.根據(jù)權(quán)利要求1所述的基于半同步半異步和管道過濾器模式的服務(wù)器設(shè)計(jì)方法,其特征在于:所述方法還包括如下步驟:
步驟3、將所述復(fù)數(shù)個(gè)數(shù)據(jù)處理模塊通過一鏈表順序地鏈接在一起,且每個(gè)數(shù)據(jù)處理模塊均對(duì)應(yīng)鏈表上的一個(gè)節(jié)點(diǎn),同時(shí)該鏈表還支持?jǐn)?shù)據(jù)處理模塊的添加或刪除。
3.根據(jù)權(quán)利要求1或2所述的基于半同步半異步和管道過濾器模式的服務(wù)器設(shè)計(jì)方法,其特征在于:所述方法還包括如下步驟:
步驟4、將二進(jìn)制指數(shù)退避策略應(yīng)用到所述客戶端的應(yīng)用層中。
4.根據(jù)權(quán)利要求1所述的基于半同步半異步和管道過濾器模式的服務(wù)器設(shè)計(jì)方法,其特征在于:所述步驟2具體為:將管道過濾器模式應(yīng)用到半同步層的數(shù)據(jù)處理模塊中,利用管道過濾器模式將一個(gè)復(fù)雜的任務(wù)分解為復(fù)數(shù)個(gè)連續(xù)的分任務(wù),當(dāng)一個(gè)數(shù)據(jù)處理模塊的線程池從自身的消息隊(duì)列中取出數(shù)據(jù),并處理完一個(gè)分任務(wù)后,得到的處理結(jié)果將被放入下一個(gè)相鄰的數(shù)據(jù)處理模塊的消息隊(duì)列中,該相鄰的數(shù)據(jù)處理模塊的線程池又會(huì)對(duì)下一個(gè)分任務(wù)進(jìn)行處理,得到的處理結(jié)果又將被放入下一個(gè)相鄰的數(shù)據(jù)處理模塊的消息隊(duì)列中,如此循環(huán)執(zhí)行下去,直到經(jīng)過最后一個(gè)數(shù)據(jù)處理模塊處理后,將得到一個(gè)最終結(jié)果,該最終結(jié)果又將通過所述排隊(duì)層及半異步層返回給客戶端。
5.根據(jù)權(quán)利要求2所述的基于半同步半異步和管道過濾器模式的服務(wù)器設(shè)計(jì)方法,其特征在于:所述數(shù)據(jù)處理模塊的添加或刪除具體為:當(dāng)要添加一個(gè)數(shù)據(jù)處理模塊時(shí),首先創(chuàng)建一個(gè)新的數(shù)據(jù)處理模塊,然后對(duì)鏈表進(jìn)行加鎖,最后調(diào)用鏈表插入函數(shù)將數(shù)據(jù)處理模塊插入到鏈表中,并將鎖釋放;當(dāng)要?jiǎng)h除一個(gè)數(shù)據(jù)處理模塊時(shí),則先對(duì)鏈表進(jìn)行加鎖,然后調(diào)用鏈表刪除函數(shù)將要?jiǎng)h除的數(shù)據(jù)處理模塊從鏈表中刪除,之后將鎖釋放。
6.根據(jù)權(quán)利要求3所述的基于半同步半異步和管道過濾器模式的服務(wù)器設(shè)計(jì)方法,其特征在于:所述二進(jìn)制指數(shù)退避策略步驟如下:
①定義初始化網(wǎng)絡(luò)連接超時(shí)時(shí)間,即第一次網(wǎng)絡(luò)連接超時(shí)時(shí)間t;
②定義進(jìn)行一次網(wǎng)絡(luò)連接失敗后,需要重新嘗試進(jìn)行網(wǎng)絡(luò)連接的次數(shù)n;
③設(shè)定新的網(wǎng)絡(luò)連接超時(shí)時(shí)間等于前一次網(wǎng)絡(luò)連接超時(shí)時(shí)間乘以N,且N大于零;
④若網(wǎng)絡(luò)連接成功,則將數(shù)據(jù)發(fā)送到網(wǎng)絡(luò);若嘗試了n次網(wǎng)絡(luò)連接后仍然失敗,則生成一個(gè)數(shù)據(jù)連接失敗的錯(cuò)誤并報(bào)告給上層應(yīng)用。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華僑大學(xué),未經(jīng)華僑大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410391320.4/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。





