[發明專利]一種對高并發或大量業務的處理方法及系統在審
| 申請號: | 202111468596.4 | 申請日: | 2021-12-03 |
| 公開(公告)號: | CN114217985A | 公開(公告)日: | 2022-03-22 |
| 發明(設計)人: | 葉明;朱作飛;侯超 | 申請(專利權)人: | 成都旋極歷通信息技術有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 成都華燁專利代理事務所(普通合伙) 51336 | 代理人: | 嚴劉英 |
| 地址: | 610000 四川省成都市武侯區*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 并發 大量 業務 處理 方法 系統 | ||
1.一種對高并發或大量業務的處理方法,其特征在于,包括以下步驟:
S1、獲取數據請求包;
S2、對每個數據請求包生成唯一序列號,并將數據請求包的處理狀態映射為值存入緩存中,構建數據請求包處理隊列;
S3、基于業務類型,將當前請求數據包中的請求數據拆分成若干個模塊,給每個模塊生成一個唯一序列號,并將每個模塊的處理狀態映射為值存入緩存中;
S4、對于每個模塊,判斷其是否為簡單模塊,若是則直接加入邏輯處理隊列,進入步驟S6;否則進入步驟S5;
S5、按照邏輯類型將當前模塊拆分成若干個關聯單元,并按照邏輯順序依次將屬于同一個模塊的關聯單元加入邏輯處理隊列,進入步驟S6;
S6、按照模塊的序列號的先后順序對屬于同一個請求數據包的邏輯處理隊列進行邏輯處理,修改當前請求數據包中邏輯處理成功的模塊的處理狀態;
S7、判斷當前請求數據包是否存在邏輯處理失敗的模塊,若是則進入步驟S8;否則刪除當前數據包所有的緩存,進入步驟S10;
S8、將當前請求數據包中邏輯處理失敗的模塊進行再次邏輯處理;
S9、判斷當前請求數據包的再次邏輯處理是否均成功,若是則刪除當前數據包所有的緩存,進入步驟S10;否則采用與步驟S4至步驟S8相同的方法對當前請求數據包邏輯處理未成功的模塊進行處理,直至處理成功,進入步驟S10;
S10、判斷數據請求包處理隊列是否還存在待處理數據包,若是則返回步驟S3;否則結束處理。
2.根據權利要求1所述的對高并發或大量業務的處理方法,其特征在于,步驟S3中將每個模塊的處理狀態映射為值的具體方法為:
將每個模塊的處理狀態映射初始值設置為0,表示未處理成功;將處理成功的模塊的處理狀態值映射為1。
3.根據權利要求1所述的對高并發或大量業務的處理方法,其特征在于,步驟S6中對屬于同一個請求數據包的不同簡單模塊采用多線程處理方式進行同步處理。
4.根據權利要求2所述的對高并發或大量業務的處理方法,其特征在于,步驟S7中判斷當前請求數據包是否存在邏輯處理失敗的模塊的具體方法為:
判斷當前請求數據包中每個模塊的處理狀態值是否均為1,若是則表示當前請求數據包不存在邏輯處理失敗的模塊;否則存在邏輯處理失敗的模塊。
5.根據權利要求1所述的對高并發或大量業務的處理方法,其特征在于,步驟S9中采用與步驟S4至步驟S8相同的方法對當前請求數據包邏輯處理未成功的模塊進行處理的具體方法為:
根據當前請求數據包邏輯處理未成功的模塊的序列號,從步驟S3得到的若干個模塊中重新獲取對應的模塊,再采用與步驟S4至步驟S8相同的方法對重新獲取的模塊進行處理。
6.根據權利要求1所述的對高并發或大量業務的處理方法,其特征在于,步驟S10中判斷數據請求包處理隊列是否還存在待處理數據包的具體方法為:
判斷緩存中是否還存在處理狀態映射為值的數據請求包,若是則判定還存在待處理數據包;否則判定不存在待處理數據包。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于成都旋極歷通信息技術有限公司,未經成都旋極歷通信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111468596.4/1.html,轉載請聲明來源鉆瓜專利網。





