[發明專利]鏈路消息處理方法、裝置、存儲介質及計算機設備有效
| 申請號: | 201910282236.1 | 申請日: | 2019-04-09 |
| 公開(公告)號: | CN110187979B | 公開(公告)日: | 2021-05-18 |
| 發明(設計)人: | 黃振華;張鈞 | 申請(專利權)人: | 口口相傳(北京)網絡技術有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 北京中強智尚知識產權代理有限公司 11448 | 代理人: | 黃耀威 |
| 地址: | 100102 北京市朝*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 消息 處理 方法 裝置 存儲 介質 計算機 設備 | ||
本發明公開了一種鏈路消息處理方法、裝置、存儲介質及計算機設備,涉及瀏覽器技術領域,主要目的在于能夠節省計算機線程數,使得線程能夠最大限度留給計算型算子使用,避免線程資源浪費,從而能夠提升計算機的吞吐量。所述方法包括:獲取待處理的多個鏈路消息;判斷針對所述多個鏈路消息所需要調度執行的算子是否為網絡型算子;若為網絡型算子,則調度執行需要啟動一個線程的網絡型算子層,將所述多個鏈路消息發送給網絡層進行處理。本發明適用于鏈路消息的處理。
技術領域
本發明涉及信息技術領域,特別是涉及一種鏈路消息處理方法、裝置、存儲介質及計算機設備。
背景技術
近年來,為了處理各種各樣的消息信息,執行引擎隨之出現,尤其是針對鏈路消息的執行引擎,如spring reactor,dexecutor,akka actor等。目前,在對鏈路消息處理時,通常針對多個鏈路消息調度執行需要啟動多個線程的多個算子。即每調度執行一個算子需要啟動一個線程,具體地,針對需要同一種算子的多個鏈路消息需要啟動多個線程進行并發執行,對于不同層的算子的多個鏈路消息需要進行解構異步執行。然而,網絡型算子的延遲較長,如有些網絡型算子的延遲達上百毫秒,造成在處理結果反饋前,網絡型算子所啟用的線程會一直處于等待狀態,會造成線程資源浪費,占用較多計算機線程數,導致計算機的吞吐量較低。
發明內容
有鑒于此,本發明提供一種鏈路消息處理方法、裝置、存儲介質及計算機設備,主要目的在于能夠節省計算機線程數,避免線程資源浪費,從而能夠提升計算機的吞吐量。
依據本發明第一方面,提供了一種鏈路消息處理方法,包括:
獲取待處理的多個鏈路消息;
判斷針對所述待處理的多個鏈路消息所需要調度執行的算子是否為網絡型算子;
若為網絡型算子,則調度執行需要啟動一個線程的網絡型算子層,將所述待處理的多個鏈路消息發送給網絡層進行處理。
進一步地,所述獲取待處理的多個鏈路消息之前,所述方法還包括:
對多個鏈路消息對應鏈路的多個算子進行類別劃分;
對所述多個算子中的多個網絡型算子進行網絡層封裝處理,得到所述網絡型算子層。
可選地,所述判斷針對所述待處理的多個鏈路消息所需要調度執行的算子是否為網絡型算子,包括:
對所述待處理的多個鏈路消息的數據結構解析,得到所述待處理的多個鏈路消息對應的處理請求類型;
根據所述處理請求類型判斷針對所述待處理的多個鏈路消息所需要調度執行的算子是否為網絡型算子;
若所述處理請求類型為網絡處理請求,則確定針對所述待處理的多個鏈路消息所需要調度執行的算子為網絡型算子。
可選地,所述對所述多個算子中的多個網絡型算子進行網絡層封裝處理,得到所述網絡型算子層,包括:
基于預設的網絡層封裝函數,對所述多個網絡型算子進行網絡層封裝處理,得到所述網絡型算子層。
進一步地,所述判斷針對所述待處理的多個鏈路消息所需要調度執行的算子是否為網絡型算子之后,所述方法還包括:
若為計算型算子,則調度執行計算型算子對所述待處理的多個鏈路消息進行處理。
進一步地,所述調度執行需要啟動一個線程的網絡型算子層,將所述待處理的多個鏈路消息發送給網絡層進行處理之后,所述方法還包括:
接收所述網絡層反饋的處理結果,調用預設回調函數將所述處理結果封裝成下游鏈路消息并發送到消息處理隊列中。
依據本發明第二方面,提供了一種鏈路消息處理裝置,包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于口口相傳(北京)網絡技術有限公司,未經口口相傳(北京)網絡技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910282236.1/2.html,轉載請聲明來源鉆瓜專利網。





