【技術實現步驟摘要】
本專利技術涉及計算機,具體涉及一種消費者容器的重啟方法、裝置、電子設備及存儲介質。
技術介紹
1、在當今的軟件開發與系統架構領域,異步模型憑借其允許同一時間處理多個事件的特性,得到了廣泛應用。當程序調用耗時較長的功能方法時,不會阻塞執行流程,可繼續向下運行,極大提升了整體效率。而docker容器技術也在部署異步任務處理器方面展現出諸多優勢,它能保障各個服務相互獨立,避免資源使用的浪費,通過docker部署異步任務處理器去實時監聽和處理異步任務,不僅可減少資源占用,還能營造高可用的環境。并且,在多臺節點上部署多個消費者容器,能有效減輕消費者在處理異步任務時的內存壓力,進一步加快消費速度。然而,在多節點異步任務消費者容器重啟這一關鍵環節上,卻面臨諸多挑戰。一方面,異步任務本身往往有著較高的冪等性要求,尤其當任務信息體包含大量數據時,若進行恢復操作,效果不盡人意,效率也較為低下,而且在異步任務處理邏輯簡單的情形下,改造工作量大,進而致使消費效率降低;另一方面,重啟時機的把控極為困難,在數據流較大的場景中實施重啟,現有技術難以在不影響任務消費效率的前提下確保異步任務順利被消費。同時,從安全性角度來看,現有技術較為薄弱,外部錯誤或者惡意的重啟指令容易致使容器不合時宜地重啟,最終造成異步任務丟失。此外,當前對于重啟意圖不夠明確,不同場景下的重啟方式所產生的效果差異明顯,但卻缺乏針對各個重啟場景設計的針對性方法。
2、然而在多節點異步任務消費者容器重啟方面,存在異步任務恢復效果差、效率低、重啟時機難把握、安全性弱以及缺乏針對性重啟
技術實現思路
1、有鑒于此,本專利技術實施例提供了一種消費者容器的重啟方法、裝置、電子設備及存儲介質,以解決在多節點異步任務消費者容器重啟方面,存在異步任務恢復效果差、效率低、重啟時機難把握、安全性弱以及缺乏針對性重啟方法的問題。
2、第一方面,本專利技術實施例提供了一種消費者容器的重啟方法,所述方法包括:
3、實時獲取部署在多節點的消費者容器的運行信息,以及獲取所述消費者容器正在進行的異步任務信息和進程標識信息;
4、監聽所述消費者容器所在運行環境的外部觸發的容器重啟指令;
5、響應所述容器重啟指令,利用所述運行信息、所述異步任務信息以及所述進程標識信息進行重啟性能評估,得到評估結果;
6、基于所述重啟指令以及所述評估結果獲取目標重啟策略,并按照所述目標重啟策略控制所述消費者容器執行重啟操作。
7、進一步的,所述實時獲取部署在多節點的消費者容器的運行信息,包括:
8、獲取處于監控框架內的消費者容器,其中,所述監控框架是利用消費者容器所關聯的消費任務隊列以及所述消費者容器在各節點部署的具體數量構建的;
9、獲取所述監控框架內的消費者容器按照容器判活方式上報的多個關鍵信息;
10、基于所述關鍵信息構建所述消費者容器的運行信息。
11、進一步的,所述獲取所述消費者容器正在進行的異步任務信息和進程標識信息,包括:
12、分析正在進行的各異步任務是否屬于分布式異步任務。
13、若屬于分布式異步任務,則按照預設信息類目清單讀取相應的異步任務信息;
14、確定所述消費者容器對應的消費者進程,并獲取所述消費者進程中與所述分布式異步任務管理的進程標識信息。
15、進一步的,所述利用所述運行信息、所述異步任務信息以及所述進程標識信息進行重啟性能評估,得到評估結果,包括:
16、利用所述運行信息評估所述消費者容器的重啟狀態;
17、利用所述異步任務信息以及所述進程標識信息評估所述消費者容器的重啟風險;
18、基于所述重啟狀態以及所述重啟風險生成所述評估結果。
19、進一步的,所述利用所述運行信息評估所述消費者容器的重啟狀態,包括:
20、從所述運行信息中提取所述消費者容器對應的判活信息以及多個指標數據;
21、分析所述判活信息得到所述消費者容器的容器狀態;
22、對比各個指標數據和響應的預設閾值得到所述消費者容器的容器壓力;
23、將所述容器狀態以及所述容器壓力與各個預設重啟狀態對應的重啟條件進行匹配,得到所述容器狀態以及所述容器壓力命中的重啟狀態。
24、進一步的,所述利用所述異步任務信息以及所述進程標識信息評估所述消費者容器的重啟風險,包括:
25、利用異步任務類型對所述消費者容器當前進行的異步任務進行分類,得到不同類型的異步任務;
26、按照歷史同類型異步任務的任務指標數據確定當前相同類型的異步任務對應的任務分值;
27、從所述進程標識信息中確定消費者進程的進程數量以及監測到的數據包量;
28、分析所述消費者進程的進程數量、所述數據包量以及異步任務的任務分值之間的交互影響,并基于所述交互影響得到所述消費者容器的重啟風險。
29、進一步的,所述按照所述目標重啟策略控制所述消費者容器執行重啟操作,包括:
30、獲取待重啟的消費者容器關聯的密鑰對,并將所述密鑰對中的公鑰信息和所述目標重啟策略對應的停止指令發送至緩存,其中,所述消費者進程基于設定規則檢測所述緩存是否存有重啟指令,當檢測到停止指令時,進入休眠狀態,并暫停讀取與消費后續異步任務;
31、持續監控所述緩存,當檢測到所述緩存中沒有待重啟的消費者容器的實時數據包時,依據所述目標重啟策略執行重啟操作,并在所述消費者容器重啟后,將原有消費者進程終止,并清理所述緩存中的停止指令。
32、第二方面,本專利技術實施例提供了一種消費者容器的重啟裝置,所述裝置包括:
33、獲取模塊,用于實時獲取部署在多節點的消費者容器的運行信息,以及獲取所述消費者容器正在進行的異步任務信息和進程標識信息;
34、監聽模塊,用于監聽所述消費者容器所在運行環境的外部觸發的容器重啟指令;
35、評估模塊,用于基于所述容器重啟指令,利用所述運行信息、所述異步任務信息以及所述進程標識信息進行重啟性能評估,得到評估結果;
36、執行模塊,用于基于所述重啟指令以及所述評估結果獲取目標重啟策略,并按照所述目標重啟策略控制所述消費者容器執行重啟操作。
37、第三方面,本專利技術實施例提供了一種電子設備,包括:存儲器和處理器,存儲器和處理器之間互相通信連接,存儲器中存儲有計算機指令,處理器通過執行計算機指令,從而執行上述第一方面或其對應的任一實施方式的方法。
38、第四方面,本專利技術實施例提供了一種計算機可讀存儲介質,該計算機可讀存儲介質上存儲有計算機指令,計算機指令用于使計算機執行上述第一方面或其對應的任一實施方式的方法。
39、本申請首先通過實時獲取部署在多節點的消費者容器的運行信息,以及精準抓取正在進行的異步任務信本文檔來自技高網...
【技術保護點】
1.一種消費者容器的重啟方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述實時獲取部署在多節點的消費者容器的運行信息,包括:
3.根據權利要求1所述的方法,其特征在于,所述獲取所述消費者容器正在進行的異步任務信息和進程標識信息,包括:
4.根據權利要求1所述的方法,其特征在于,所述利用所述運行信息、所述異步任務信息以及所述進程標識信息進行重啟性能評估,得到評估結果,包括:
5.根據權利要求4所述的方法,其特征在于,所述利用所述運行信息評估所述消費者容器的重啟狀態,包括:
6.根據權利要求4所述的方法,其特征在于,所述利用所述異步任務信息以及所述進程標識信息評估所述消費者容器的重啟風險,包括:
7.根據權利要求1所述的方法,其特征在于,所述按照所述目標重啟策略控制所述消費者容器執行重啟操作,包括:
8.一種消費者容器的重啟裝置,其特征在于,所述裝置包括:
9.一種電子設備,其特征在于,包括:
10.一種計算機可讀存儲介質,其特征在于,所述計算機可
...【技術特征摘要】
1.一種消費者容器的重啟方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述實時獲取部署在多節點的消費者容器的運行信息,包括:
3.根據權利要求1所述的方法,其特征在于,所述獲取所述消費者容器正在進行的異步任務信息和進程標識信息,包括:
4.根據權利要求1所述的方法,其特征在于,所述利用所述運行信息、所述異步任務信息以及所述進程標識信息進行重啟性能評估,得到評估結果,包括:
5.根據權利要求4所述的方法,其特征在于,所述利用所述運行信息評估所述消費者容器的重啟狀態...
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。