本申請涉及計算機軟件,具體涉及一種redis實例的健康診斷處理方法、裝置和電子設備。
背景技術:
1、隨著各類業務場景的不斷豐富和業務量的井噴式增長,以及用戶量的增加引起了并發量提高,使得系統對緩存redis的需求越來越大。尤其是在電信行業,運營商本身就構建了非常多的應用系統為廣大消費者提供各種特色服務,而有些系統功能更涉及到多個業務系統的子功能,需要多系統協同才能正常工作,此時緩存redis在其中能夠起到降低對物理數據源訪問的頻次和提高系統的運行性能的作用,因此,redis是否健康具有非常重要的意義,異常的redis可能會引發系統故障。
2、相關技術中,redis健康度診斷有兩種方式,一種是基于專家經驗進行redis健康度診斷,該方法通過python腳本實時采集redis健康度指標,專家根據經驗來判斷各項指標是否正常。另一種是在獲取指標后通過打分模型針對單一指標分別打分,然后匯總所有指標的打分得出redis整體健康度。
3、上述第一種方法需要人工進行健康度指標的采集且需要人工進行健康度的判斷,操作麻煩且耗費人力成本,第二種方法雖然是通過打分模型進行打分,節省了人力成本,但是上述兩種方法均無法主動解決redis異常的問題,缺乏針對異常的應對機制。
技術實現思路
1、本申請實施例提供一種redis實例的健康診斷處理方法、裝置和電子設備,用以解決無法主動解決redis異常的問題,缺乏針對異常的應對機制的技術問題。
2、第一方面,本申請實施例提供一種redis實例的健康診斷處理方法,包括:
3、采集至少一個redis實例的指標全量數據,所述指標全量數據包括實時指標數據和預設歷史時間段內的歷史指標數據;
4、基于健康度評分模型,根據各所述redis實例的指標全量數據分別確定各所述redis實例的健康度評分;
5、針對健康度評分低于預設評分閾值的異常redis實例,基于預訓練的異動判斷模型,根據所述異常redis實例的實時指標數據確定所述異常redis實例對應的修復措施。
6、在一個實施例中,所述基于預訓練的異動判斷模型,根據所述異常redis實例的實時指標數據確定所述異常redis實例對應的修復措施,包括:
7、將所述異常redis實例的實時指標數據輸入預訓練的異動判斷模型,獲得所述異動判斷模型輸出的所述異常redis實例對應的修復措施;
8、其中,所述異動判斷模型為基于決策樹算法訓練獲得的。
9、在一個實施例中,還包括:
10、當所述異常redis實例對應的修復措施為自動修復措施時,調用所述自動修復措施對應的修復程序對所述異常redis實例進行異常修復;
11、當所述異常redis實例對應的修復措施為人工修復措施時,向修復人員發送修復指示信息,所述修復指示信息用于指示所述修復人員對所述異常redis實例進行異常修復。
12、在一個實施例中,所述基于健康度評分模型,根據各所述redis實例的指標全量數據分別確定各所述redis實例的健康度評分,包括:
13、基于所述健康度評分模型分別計算所述redis實例的指標全量數據中各指標類型對應的概率密度,其中,所述健康度評分模型為基于hbos算法構建的模型;
14、基于各所述指標類型對應的概率密度確定所述redis實例的概率密度;
15、對所述redis實例的概率密度進行縮放處理,獲得所述redis實例的健康度評分。
16、在一個實施例中,還包括:
17、通過可視化工具可視化輸出所述redis實例的實時指標數據;
18、其中,所述實時指標數據包括:所述redis實例的指標,所述redis實例所屬主機的指標、所述redis實例的日志和所述redis實例所屬主機的日志。
19、在一個實施例中,所述采集至少一個redis實例的指標全量數據,所述指標全量數據包括實時指標數據和預設歷史時間段內的歷史指標數據,包括:
20、采集至少一個redis實例的指標全量數據,將所述指標全量數據存儲至clickhouse,將所述指標全量數據中的實時指標數據存儲至mongodb;
21、其中,用于確定各所述redis實例的健康度評分的指標全量數據為從所述clickhouse中獲取的;通過所述可視化工具可視化輸出的所述異常redis實例的實時指標數據為從所述mongodb中獲取的。
22、第二方面,本申請實施例提供一種redis實例的健康診斷處理裝置,包括:
23、采集單元,用于采集至少一個redis實例的指標全量數據,所述指標全量數據包括實時指標數據和預設歷史時間段內的歷史指標數據;
24、健康度診斷單元,用于基于健康度評分模型,根據各所述redis實例的指標全量數據分別確定各所述redis實例的健康度評分;
25、異常修復單元,用于針對健康度評分低于預設評分閾值的異常redis實例,基于預訓練的異動判斷模型,根據所述異常redis實例的實時指標數據確定所述異常redis實例對應的修復措施。
26、第三方面,本申請實施例提供一種電子設備,包括處理器和存儲有計算機程序的存儲器,所述處理器執行所述程序時實現第一方面所述的redis實例的健康診斷處理方法的步驟。
27、第四方面,本申請實施例提供一種所述處理器可讀存儲介質存儲有計算機程序,所述計算機程序用于使處理器執行時實現第一方面所述的redis實例的健康診斷處理方法的步驟。
28、第五方面,本申請實施例提供一種計算機程序產品,包括計算機程序,所述計算機程序被處理器執行時實現第一方面所述的redis實例的健康診斷處理方法的步驟。
29、本申請實施例提供的redis實例的健康診斷處理方法、裝置和電子設備,通過采集redis實例的實時指標數據和歷史指標數據以組成指標全量數據,基于健康度評分模型對指標全量數據進行分析能夠及時確定各redis實例的健康度評分,能夠通過歷史指標數據和實時指標數據深入的對redis實例的健康度進行分析;并且針對健康度評分低于預設評分閾值的異常redis實例,還能夠根據異常redis實例的實時指標數據主動確定針對異常redis實例對應的修復措施,進而能夠基于修復措施快速進行異常修復。
1.一種redis實例的健康診斷處理方法,其特征在于,包括:
2.根據權利要求1所述的redis實例的健康診斷處理方法,其特征在于,所述基于預訓練的異動判斷模型,根據所述異常redis實例的實時指標數據確定所述異常redis實例對應的修復措施,包括:
3.根據權利要求2所述的redis實例的健康診斷處理方法,其特征在于,還包括:
4.根據權利要求1所述的redis實例的健康診斷處理方法,其特征在于,所述基于健康度評分模型,根據各所述redis實例的指標全量數據分別確定各所述redis實例的健康度評分,包括:
5.根據權利要求1至4任一項所述的redis實例的健康診斷處理方法,其特征在于,還包括:
6.根據權利要求5任一項所述的redis實例的健康診斷處理方法,其特征在于,所述采集至少一個redis實例的指標全量數據,所述指標全量數據包括實時指標數據和預設歷史時間段內的歷史指標數據,包括:
7.一種redis實例的健康診斷處理裝置,其特征在于,包括:
8.一種電子設備,包括處理器和存儲有計算機程序的存儲器,其特征在于,所述處理器執行所述計算機程序時實現權利要求1至6任一項所述的redis實例的健康診斷處理方法的步驟。
9.一種處理器可讀存儲介質,所述處理器可讀存儲介質存儲有計算機程序,其特征在于,所述計算機程序用于使處理器執行如權利要求1至6任一項所述的redis實例的健康診斷處理方法的步驟。
10.一種計算機程序產品,包括計算機程序,其特征在于,所述計算機程序被處理器執行時實現權利要求1至6任一項所述的redis實例的健康診斷處理方法的步驟。