[發明專利]一種抗并發的數據寫入方法和系統在審
| 申請號: | 201811265135.5 | 申請日: | 2018-10-29 |
| 公開(公告)號: | CN109522136A | 公開(公告)日: | 2019-03-26 |
| 發明(設計)人: | 劉豐 | 申請(專利權)人: | 無錫天脈聚源傳媒科技有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54;G06F16/2453 |
| 代理公司: | 廣州嘉權專利商標事務所有限公司 44205 | 代理人: | 譚英強 |
| 地址: | 214000 江蘇省無錫市無錫*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 消息隊列 寫入 繁忙時段 數據存放 業務類型 分級 并發 數據庫 信息技術領域 非繁忙時段 優先權順序 拒絕接收 數據分配 數據源 優先權 讀出 服務器 反饋 檢測 分配 失敗 應用 保證 | ||
本發明公開了一種抗并發的數據寫入方法和系統,所述方法包括在繁忙時段,根據緊急程度對接收到的數據進行分級,根據分級結果,向數據分配優先權,根據分配的優先權順序以及數據的業務類型,將數據存放到卡夫卡消息隊列,當檢測到不存在相同業務類型的卡夫卡消息隊列而導致數據存放失敗時,拒絕接收未能存放到卡夫卡消息隊列中的數據,并向相應的數據源進行反饋,在非繁忙時段,將卡夫卡消息隊列中存放的數據讀出并寫入到數據庫中等步驟。本發明大幅降低繁忙時段服務器的負荷,同時能夠保證重要的數據能夠寫入數據庫。本發明廣泛應用于信息技術領域。
技術領域
本發明涉及信息技術領域,尤其是一種抗并發的數據寫入方法和系統。
背景技術
網絡服務端在高峰繁忙時期會受到大量的訪問,需要向服務器寫入大量的數據。服務器的硬件資源有限,在訪問量過大時容易因數據處理能力不足而崩潰,因此需要配套良好的抗并發算法。但現有的抗并發算法過于復雜,尤其是主流的抗并發算法,其基本原理是將數據均衡分配到多個備用服務器,因此現有技術是以設置了多個服務器為基礎的,硬件投入成本高,雖然使用多個服務器能夠達到抗并發的目的,但是單個硬件設備的工作效率不高。
發明內容
為了解決上述技術問題,本發明的目在于提供一種抗并發的數據寫入方法和系統。
本發明所采取的第一技術方案是:
一種抗并發的數據寫入方法,包括以下步驟:
在繁忙時段,根據緊急程度對接收到的數據進行分級;所述繁忙時段指負荷達到預設值的時段或預先設定的時段;
根據分級結果,向數據分配優先權;
根據數據分配到的優先權順序以及數據的業務類型,將數據存放到對應的卡夫卡消息隊列;所述卡夫卡消息隊列具有對應的業務類型,所述卡夫卡消息隊列用于接收相同業務類型的數據;
當檢測到不存在相同業務類型的卡夫卡消息隊列而導致數據存放失敗時,拒絕接收未能存放到卡夫卡消息隊列中的數據,并向相應的數據源進行反饋;
在非繁忙時段,將卡夫卡消息隊列中存放的數據讀出并寫入到數據庫中。
進一步地,所述方法還包括以下步驟:
在非繁忙時段,向被拒絕接收的數據相應的數據源發出重新傳送數據的請求;
將接收到的數據寫入到數據庫中。
進一步地,所述卡夫卡消息隊列的數量為多個,各卡夫卡消息隊列對應不同的優先權,各卡夫卡消息隊列分別被配置為可讀可寫模式、只讀模式或只寫模式。
進一步地,所述根據分配的優先權順序,將數據存放到卡夫卡消息隊列這一步驟,具體包括:
對各卡夫卡消息隊列進行掃描,從中查找出匹配隊列并檢測匹配隊列的存儲空間;所述匹配隊列由各卡夫卡消息隊列中的一個或多個組成,所述匹配隊列與待存放數據具有相同優先權順序;
當判斷所述匹配隊列的存儲空間足以完全存放待存放數據時,則將待存放數據拷貝到所述匹配隊列中,反之,則將待存放數據分解成第一部分和第二部分,然后將第一部分拷貝到所述匹配隊列中,將第二部分拷貝到優先權順序次于匹配隊列的卡夫卡消息隊列中;其中,所述第一部分的占據空間與匹配隊列的存儲空間相等。
進一步地,所述將第二部分拷貝到優先權順序次于匹配隊列的卡夫卡消息隊列中這一步驟,具體包括:
對各卡夫卡消息隊列進行掃描,從中查找出次級隊列并檢測次級隊列的存儲空間;所述次級隊列由各卡夫卡消息隊列中的一個或多個組成,所述次級隊列的優先權順序比匹配隊列的優先權順序次一級;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于無錫天脈聚源傳媒科技有限公司,未經無錫天脈聚源傳媒科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811265135.5/2.html,轉載請聲明來源鉆瓜專利網。





