1.一種基于業務優先級的高并發服務資源分配方法,其特征在于:設置調度器;該調度器與服務器集群中的所有服務器相連;該調度器存儲有所有服務器的標識,組成該服務器集群的服務器標識隊列;
所述高并發服務資源分配方法包括如下步驟:
步驟S1,調度器接收用戶發出的業務請求;
步驟S2,所述調度器為接收到的每個業務請求生成一個進程;
步驟S3,所述調度器采用輪詢方式轉發所接收到的業務請求給服務器,當有服務器服務資源充足,接受該業務請求時,相應的進程結束;當所有服務器都服務資源不足,暫停接入請求時,轉入步驟S4;
步驟S4,所述調度器將未被服務器接受的業務請求存儲下來;
步驟S5,所述調度器從配置文件中調取所存儲的業務請求的業務優先級;
步驟S6、按照業務優先級及業務請求發出時間,調度器將存儲的業務請求插入到相應的業務請求隊列中的相應位置;
具體地,業務請求隊列由優先級相同的業務請求組成,每一個業務請求隊列中,按用戶發出業務請求的時間先后順序排隊;
步驟S7,所述調度器根據業務請求隊列中的業務優先級及該業務請求隊列中的業務請求數量設定重發該業務請求隊列的時間間隔t,具體地,滿足niti<njtj,其中i、j表示業務請求隊列標號,i業務請求隊列業務優先級高于j業務請求隊列的業務優先級,ni、ti分別為i業務請求隊列中的業務請求數量及重發該業務請求隊列的時間間隔,nj、tj分別為j業務請求隊列中的業務請求數量及重發該業務請求隊列的時間間隔;
步驟S8,所述調度器為每條業務請求隊列生成一個進程;
步驟S9,所述調度器每隔時間t,采用輪詢方式重發相應的業務請求隊列,直到該業務請求隊列的所有業務請求被服務器接受,結束該進程。
2.根據權利要求1所述的高并發服務資源分配方法,其特征在于:所述步驟S3包括如下子步驟:
步驟S301,調度器從配置文件中獲取該業務請求所需服務資源單位數;具體地,用戶將每一業務類型所需服務資源單位數存儲在配置文件中,供調度器獲取;
步驟S302,所述調度器將服務器標識隊列中的隊頭元素出隊并插入隊尾;
步驟S303,所述調度器將接收的業務請求及獲取到的所需服務資源單位數轉發給隊尾標識的服務器;
步驟S304,所述隊尾標識的服務器判斷自身剩余服務資源單位數是否大于等于調度器轉發的所需服務資源單位數;是,該服務器接受并處理該業務請求,結束該進程,否,該服務器向調度器返回“業務暫停接入”響應;
重復上述步驟S301~S304,直到有一服務器接受該業務請求,相應的進程結束;或所有服務器均返回“業務暫停接入”響應,轉入步驟S4。
3.根據權利要求1所述的高并發服務資源分配方法,其特征在于:所述業務優先級由用戶需求決定,根據任務的緊急、重要程度,設置業務優先級,將業務優先級寫入配置文件中,供調度器調取。
4.根據權利要求1所述的高并發服務資源分配方法,其特征在于:所述步驟S9包括如下子步驟:
步驟S901,調度器從配置文件中獲取該業務請求隊列第一個業務請求所需服務資源單位數;
步驟S902,調度器將服務器標識隊列中的隊頭元素出隊并插入隊尾;
步驟S903,t時間間隔后,所述調度器將該業務請求隊列中第一個業務請求及該業務請求所需服務資源單位數轉發給隊尾標識的服務器;
步驟S904,所述隊尾標識的服務器判斷自身剩余服務資源單位數是否大于等于調度器轉發的所需資源單位數;是,該服務器接受并處理所述的第一個業務請求,調度器將該業務請求從業務請求隊列中刪除;否,該服務器向調度器返回“業務暫停接入”響應;
重復上述步驟S901~S904,直到該業務請求隊列中的所有業務請求均被服務器接受,結束該進程。
5.根據權利要求1所述的高并發服務資源分配方法,其特征在于:所述調度器采用兩臺服務器以主備方式實現。
6.一種基于業務優先級的高并發服務資源分配方法,其特征在于:設置調度器;該調度器與服務器集群中的所有服務器相連;該調度器存儲有所有服務器的標識,組成該服務器集群的服務器標識隊列;調度器每隔一定時間向所有服務器詢問服務資源消耗情況,獲得服務器集群的總資源消耗比;
所述高并發服務資源分配方法包括如下步驟:
步驟S1,調度器接收用戶發出的業務請求;
步驟S2,調度器判斷當前服務器集群的總資源消耗比是否達到調度器所設置的閾值;判斷結果為是時,轉步驟S5;判斷結果為否時,轉步驟S3;
步驟S3,所述調度器為接收到的每個業務請求生成一個進程;
步驟S4,所述調度器采用輪詢方式轉發所接收到的業務請求給服務器,當有服務器服務資源充足,接受該業務請求時,相應的進程結束;
步驟S5,所述調度器將所述業務請求存儲下來;
步驟S6,所述調度器從配置文件中調取所存儲的業務請求的業務優先級;業務優先級由用戶需求決定,用戶根據任務的緊急、重要程度,設置業務優先級,將業務優先級寫入配置文件中,供調度器調取;
步驟S7、按照業務優先級及業務請求發出的時間,將該業務請求插入到相應業務請求隊列中的相應位置;
具體地,業務請求隊列由優先級相同的業務請求組成,每一個業務請求隊列中,按用戶發出業務請求的時間先后順序排隊;
步驟S8,所述調度器根據業務請求隊列中的業務優先級及該業務請求隊列中的業務請求數量設定重發該業務請求隊列的時間間隔t,具體地,滿足niti<njtj,其中i、j表示業務請求隊列標號,i業務請求隊列業務優先級高于j業務請求隊列的業務優先級,ni、ti分別為i業務請求隊列中的業務請求數量及重發該業務請求隊列的時間間隔,nj、tj分別為j業務請求隊列中的業務請求數量及重發該業務請求隊列的時間間隔;
步驟S9,所述調度器為每條業務請求隊列生成一個進程;
步驟S10,所述調度器每隔時間t,采用輪詢方式重發相應的業務請求隊列,直到該業務請求隊列的所有業務請求被服務器接受,停止重發該業務請求隊列,結束該進程。
7.根據權利要求6所述的高并發服務資源分配方法,其特征在于:所述閾值由用戶需求決定,根據實際情況設置,設置原則是隨著對業務優先級側重程度的增大,減小該閾值。
8.根據權利要求7所述的高并發服務資源分配方法,其特征在于:所述閾值取為75%。
9.根據權利要求6所述的高并發服務資源分配方法,其特征在于:所述步驟S4包括如下子步驟:
步驟S401,調度器從配置文件中獲取該業務請求所需服務資源單位數;具體地,用戶將每一業務類型所需服務資源單位數存儲在配置文件中,供調度器獲取;
步驟S402,所述調度器將服務器標識隊列中的隊頭元素出隊并插入隊尾;
步驟S403,所述調度器將獲取到的所需服務資源單位數轉發給隊尾標識的服務器;
步驟S404,所述隊尾標識的服務器判斷自身剩余服務資源單位數是否大于等于調度器轉發的所需服務資源單位數;是,該服務器接受并處理該業務請求,結束該進程;否,該服務器向調度器返回“業務暫停接入”響應;
重復上述步驟S401~S404,直到有一服務器接受該業務請求,結束相應進程。
10.根據權利要求6所述的高并發服務資源分配方法,其特征在于:所述步驟S10包括如下子步驟:
步驟S1001,調度器從配置文件中獲取該業務請求隊列第一個業務請求所需服務資源單位數;
步驟S1002,t時間間隔后,調度器將服務器標識隊列中的隊頭元素出隊并插入隊尾;
步驟S1003,所述調度器將該業務請求隊列中第一個業務請求所需服務資源單位數轉發給隊尾標識的服務器;
步驟S1004,所述隊尾標識的服務器判斷自身剩余服務資源單位數是否大于等于調度器轉發的所需資源單位數;是,該服務器接受并處理業務請求隊列中的第一個業務請求,相應的業務請求從業務請求隊列中刪除;否,則該服務器向調度器返回“業務暫停接入”響應;
重復上述步驟S1001~S1004,直到該業務請求隊列中的所有業務請求均被服務器接受,停止重發該業務請求隊列,結束該進程。