[發明專利]多線程并發處理方法和多線程并發處理系統有效
| 申請號: | 201610143991.8 | 申請日: | 2016-03-14 |
| 公開(公告)號: | CN107193539B | 公開(公告)日: | 2020-11-24 |
| 發明(設計)人: | 周劍橋 | 申請(專利權)人: | 北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司 |
| 主分類號: | G06F9/38 | 分類號: | G06F9/38;G06F9/50 |
| 代理公司: | 北京成創同維知識產權代理有限公司 11449 | 代理人: | 蔡純;張靖琳 |
| 地址: | 100080 北京市海淀區杏石口路6*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 多線程 并發 處理 方法 系統 | ||
本發明中提供的多線程并發處理系統,包括:接收線程、分發線程、多個處理線程和匯聚線程,其中,所述接收線程用于接收多個待處理數據并發送給所述分發線程;所述分發線程用于將所述待處理數據分配給多個處理線程;每一所述處理線程用于將所述待處理數據進行處理后,將已處理數據發送給匯聚線程;所述匯聚線程用于按照所述分發線程分發的順序從所述多個處理線程中接收所述已處理數據進行匯總,所述接收線程、所述分發線程、多個所述處理線程和所述匯聚線程為并發執行的線程。通過帶有時序功能的多線程處理系統,能夠處理具有時序性要求的海量數據,目前已應用于訂單數據的處理。本發明同時提供對應的多線程并發處理方法。
技術領域
本發明涉及計算機技術領域,具體涉及一種多線程并發處理方法和多線程并發處理系統。
背景技術
隨著信息與通訊技術的發展,海量數據時代已經到來。各個行業,尤其是對實時性要求較高的行業要求系統在單位時間內處理的數據量與日俱增,例如金融、電信、網絡通信服務(電子郵件、即時通信)、電子商務系統等。
對海量數據的處理,通過硬件提高處理效率的空間已經很小。在軟件方面,主要通過多進程、多線程并發處理海量數據。將業務數據拆分為若干任務,分別將每個任務分配給不同的進程/線程進行處理,最終完成整個業務的處理過程。由于單個線程相對于單個進程占用的系統資源較小,處理的效率更高,因此,多線程并發技術更普遍地應用于在互聯網領域。
但是大多數多線程系統在處理任務時,不考慮業務數據之間的內在邏輯關系,這在某些情況下會導致業務處理出現問題。例如,電子商務系統中,用戶在提交一個訂單請求后,又追加了一個訂單,最后又取消了前面兩個訂單,系統對應生成三條訂單數據,這三條訂單數據的處理必須按照固定的順序,否則就可能造成處理失敗。
發明內容
有鑒于此,本發明提供一種多線程并發處理方法和多線程并發處理系統,以解決上述問題。
根據本發明的第一方面,提供一種多線程并發處理方法,包括:接收線程接收多個待處理數據,并發送給分發線程;所述分發線程將所述待處理數據分配給多個處理線程;每一所述處理線程將所述待處理數據進行處理后,將已處理數據發送給匯聚線程;所述匯聚線程按照所述分發線程分發的順序從所述多個處理線程中接收所述已處理數據進行匯總,
其中所述接收線程、所述分發線程、多個所述處理線程和所述匯聚線程并發執行。
優選地,所述接收線程和所述分發線程將所述待處理數據存儲到數據通道,每一所述處理線程將所述已處理數據存儲到數據通道,所述分發線程和所述處理線程從所述數據通道中讀取所述待處理數據,所述匯聚線程從所述數據通道中讀取所述已處理數據。
優選地,所述數據通道包括:消息隊列、共享內存和異步IO。
優選地,如果所述匯聚線程從一個所述數據通道中無法讀取到數據,阻塞預定時間后,按照分發的順序讀取下一個數據通道內的數據。
優選地,所述分發線程將所述待處理數據分配給多個處理線程包括:所述分發線程讀取N*M條所述待處理數據;按順序將N*M條的所述待處理數據的每M條分別分配給N個所述處理線程,以此類推,
所述匯聚線程按照所述分發線程分發的順序從所述多個處理線程中依次接收所述已處理數據包括:所述匯聚線程按照分發的順序分別從N個所述處理線程中的一個讀取M條所述已處理數據,以此類推,其中M大于等于1,N為大于等于2的整數。
優選地,還包括:在所述分發線程將所述待處理數據分配給多個處理線程前,對所述待處理數據進行排序。
優選地,還包括:在所述分發線程將所述待處理數據分配給多個處理線程前,所述分發線程通過所述待處理數據的自增型主鍵與所述處理線程的個數進行取模運算,以確定所述分發線程分發的順序。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司,未經北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/201610143991.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種改進的鉤取技術的方法及裝置
- 下一篇:一種應用軟件演示方法、裝置





