[發明專利]一種服務器業務請求處理方法和裝置有效
| 申請號: | 201110454614.3 | 申請日: | 2011-12-30 |
| 公開(公告)號: | CN102541659A | 公開(公告)日: | 2012-07-04 |
| 發明(設計)人: | 王忻 | 申請(專利權)人: | 重慶新媒農信科技有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50 |
| 代理公司: | 重慶博凱知識產權代理有限公司 50212 | 代理人: | 張先蕓 |
| 地址: | 401121 重慶市北部新區高新*** | 國省代碼: | 重慶;85 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 服務器 業務 請求 處理 方法 裝置 | ||
技術領域
本發明涉及計算機通信網絡技術和服務器技術領域,具體涉及一種服務器業務請求處理方法和裝置。
背景技術
服務器,是指在計算機通信網絡中的一個管理資源對外提供業務服務的高性能計算機。服務器類型有很多,例如數據服務器、文件服務器、網頁服務器、流媒體服務器、搜索服務器等,它們偵聽計算機通信網絡中來自計算機客戶端或移動通信客戶端的業務請求,并對業務請求進行響應和處理,進而為計算機客戶端或移動通信客戶端提供各種不同的業務服務,豐富了網絡應用。計算機通信網絡中的服務器隨時都面臨著數量龐大的業務請求需要執行處理,服務器對業務請求的處理能力自然也成為其業務服務質量的一項重要衡量標準,快速、高效的業務服務更能夠提升用戶的業務體驗以及對業務服務產品的忠誠度。
為了提升服務器業務服務質量,目前服務器都普遍采用了多線程并發執行業務請求處理的方式,以增強服務器的業務請求處理能力。現有服務器通常所采用的多線程并發業務請求處理方式,是每當一個請求到達的時候,服務器都新建一個線程對新到達的業務請求進行處理,直至處理完畢以后再銷毀相應的線程;這一方式雖然能夠完成對眾多業務請求的多線程并發處理,但若在較短時間內有數量過于龐大的業務請求到達服務器時,過多的業務請求處理線程很可能“壟斷”占用服務器的系統資源,使得服務器運行效率驟然降低,反而出現業務請求處理的延時較長甚至無響應的情況;不僅如此,由于并發執行大量的業務請求處理時,服務器也同時需要大量地、不間斷地創建和銷毀線程,這無疑進一步增加了服務器執行業務請求處理的耗時,并且大量地創建、銷毀線程自身也進一步的消耗了服務器系統資源,更容易導致服務器無響應、業務服務中斷的嚴重后果。
發明內容
針對現有技術中存在的上述不足,本發明的目的在于提供一種服務器業務請求處理方法和裝置,使得服務器能夠保持較高的業務請求處理執行效率,進一步增強服務器的業務請求處理性能。
為實現上述目的,本發明采用了如下技術手段:
一種服務器業務請求處理方法,服務器預先創建有限數量的空閑的待用線程;在服務器運行過程中,將接收到的業務請求排隊形成請求隊列,并分配調用空閑的待用線程對請求隊列中尚未處理的業務請求進行處理;被分配調用的待用線程在業務請求處理執行完成后,重新釋放為空閑狀態,供服務器后續調用。
上述的服務器業務請求處理方法中,作為一種可選擇方案,所述“服務器預先創建有限數量的空閑的待用線程”具體為,在服務器啟動運行時,創建Nmax個空閑的待用線程,Nmax為預設最大線程數;
在服務器運行過程中,所述“分配調用空閑的待用線程對請求隊列中尚未處理的業務請求進行處理”的具體分配調用步驟如下:
1)判斷當前時刻請求隊列中是否存在尚未處理的業務請求;若是,執行步驟2);否則執行步驟4);
2)判斷當前時刻是否存在空閑的待用線程;若是,執行步驟3);否則執行步驟4);
3)分配調用一個空閑的待用線程對請求隊列中當前時刻排隊最靠前的一個尚未處理的業務請求進行處理,然后立即返回步驟1);
4)經延時Δt后,返回步驟1)。
上述的服務器業務請求處理方法中,作為另一種可選擇方案,所述“服務器預先創建有限數量的空閑的待用線程”具體為,在服務器啟動運行時,創建N個空閑的待用線程,且N<Nmax,Nmax為預設最大線程數;
在服務器運行過程中,所述“分配調用空閑的待用線程對請求隊列中尚未處理的業務請求進行處理”的具體分配調用步驟如下:
a)判斷當前時刻請求隊列中是否存在尚未處理的業務請求;若是,執行步驟b);否則執行步驟e);
b)判斷當前時刻是否存在空閑的待用線程;若是,執行步驟c);否則執行步驟d);
c)分配調用一個空閑的待用線程對請求隊列中當前時刻排隊最靠前的一個尚未處理的業務請求進行處理,然后立即返回步驟a);
d)判斷當前時刻待用線程的總數是否已達到預設最大線程數Nmax;若是,則執行步驟e);否則,再創建一個空閑的待用線程對請求隊列中當前時刻排隊最靠前的一個尚未處理的業務請求進行處理,然后立即返回步驟a);
e)經延時Δt后,返回步驟a)。
上述的服務器業務請求處理方法中,進一步,所述N的取值范圍為1/2~2/3倍預設最大線程數Nmax。
上述的服務器業務請求處理方法中,進一步,所述預設最大線程數Nmax的取值范圍為(1±10%)Nthr,Nthr為服務器目標線程數,且有:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于重慶新媒農信科技有限公司,未經重慶新媒農信科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110454614.3/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種網頁排序方法和裝置
- 下一篇:一種高效的內存管理方法和裝置





