最新的毛片基地免费,国产国语一级毛片,免费国产成人高清在线电影,中天堂国产日韩欧美,中国国产aa一级毛片,国产va欧美va在线观看,成人不卡在线

一種插件配置方法、裝置、設備及存儲介質與流程

文檔序號:41958881發(fā)布日期:2025-05-20 16:53閱讀:2來源:國知局
一種插件配置方法、裝置、設備及存儲介質與流程

本技術涉及插件配置,尤其涉及一種插件配置方法、裝置、設備及存儲介質。


背景技術:

1、熱更新是指軟件不通過運營商店的軟件版本更新審核,直接通過應用自行下載的軟件數(shù)據(jù)更新的行為。

2、現(xiàn)有熱更新技術通過啟動arthas進程,attach?api連接目標進程,創(chuàng)建instrumentationimpl對象,調用loadclassandcallagentmain方法更新類定義,調用指定的agent-class類的agentmain方法,完成java虛擬機中class的熱更新處理。

3、但現(xiàn)有技術不適用于對組件化程序熱更新的場景,會產(chǎn)生邏輯混亂問題,易產(chǎn)生信息泄露。


技術實現(xiàn)思路

1、本技術提供一種插件配置方法、裝置、設備及存儲介質,用以解決現(xiàn)有技術不適用于對組件化程序熱更新的場景,會產(chǎn)生邏輯混亂問題,易產(chǎn)生信息泄露問題。

2、第一方面,本技術提供一種插件配置方法,包括:

3、當從目標插件裝載隊列中的目標位獲取的插件處理指令為插件裝載指令時,根據(jù)插件裝載指令,插件裝載器獲取類加載器、以及類加載器的實例,目標插件裝載隊列為插件裝載隊列的鏡像隊列;

4、根據(jù)類加載器的實例,創(chuàng)建目標url類加載器,目標url類加載器的父類加載器為類加載器的實例;

5、根據(jù)目標url類加載器,將待加載的代碼包載入java虛擬機,得到插件裝載結果,其中,待加載的代碼包為存儲在與插件裝載指令對應的插件代碼包。

6、在本技術中,在當從目標插件裝載隊列中的目標位獲取的插件處理指令為插件裝載指令時,根據(jù)插件裝載指令,插件裝載器獲取類加載器、以及類加載器的實例之前,方法還包括:

7、確定目標插件裝載隊列,目標插件裝載隊列包括插件裝載指令和插件拆卸指令,且插件裝載指令和插件拆卸指令按照指令輸入順序排列。

8、在本技術中,在當從目標插件裝載隊列中的目標位獲取的插件處理指令為插件裝載指令時,根據(jù)插件裝載指令,插件裝載器獲取類加載器、以及類加載器的實例之前,方法還包括:

9、獲取用戶需求指令;

10、將用戶需求指令發(fā)送到任務調度單元,進行任務調度,得到任務安排信息;

11、根據(jù)任務安排信息,從目標插件裝載隊列中的目標位獲取插件處理指令。

12、在本技術中,當任務安排信息為插件上傳時,在將用戶需求指令發(fā)送到任務調度單元,進行任務調度,得到任務安排信息之后,方法包括:

13、確定與任務安排信息對應的插件文件包,插件文件包包括插件配置信息和插件文件;

14、將插件配置信息上傳到數(shù)據(jù)庫;

15、將插件文件上傳到裝載庫,得到插件上傳結果;

16、根據(jù)插件上傳結果,在目標插件裝載隊列尾部添加插件裝載指令。

17、在本技術中,當任務安排信息為插件調用時,在將用戶需求指令發(fā)送到任務調度單元,進行任務調度,得到任務安排信息之后,方法包括:

18、獲取用戶的寫入操作;

19、根據(jù)用戶的寫入操作,確定定時任務信息,定時任務信息包括目標時間、目標插件、目標方法、目標操作;

20、根據(jù)定時任務信息中的目標插件,確定類加載器,以使類加載器加載目標類、目標類的實例、以及目標方法實例;

21、根據(jù)目標方法實例,控制目標插件在目標時間執(zhí)行目標操作,得到插件調用結果。

22、在本技術中,當任務安排信息為執(zhí)行情況指令時,在將用戶需求指令發(fā)送到任務調度單元,進行任務調度,得到任務安排信息之后,方法包括:

23、確定用戶需求指令中的目標插件;

24、根據(jù)用戶需求指令中的目標插件,獲取裝載庫中插件信息;

25、根據(jù)插件信息,得到執(zhí)行情況指令結果;

26、將插件執(zhí)行結果通過任務調度單元上傳到交互界面進行顯示。

27、在本技術中,當服務進程中出現(xiàn)系統(tǒng)重啟或異常退出時,在當從目標插件裝載隊列中的目標位獲取的插件處理指令為插件裝載指令時,根據(jù)插件裝載指令,插件裝載器獲取類加載器、以及類加載器的實例之前,方法還包括:

28、確定目標插件裝載隊列所在的內存鏡像;

29、根據(jù)目標插件裝載隊列所在的內存鏡像,創(chuàng)建目標插件裝載隊列的本地磁盤鏡像;

30、根據(jù)目標插件裝載隊列的本地磁盤鏡像,裝載未完成的隊列數(shù)據(jù)。

31、在本技術中,根據(jù)插件裝載指令,插件裝載器獲取類加載器、以及類加載器的實例,包括:

32、根據(jù)插件裝載指令,插件裝載器獲取類加載器classloader;

33、將類加載器classloader實例化,得到類加載器實例。

34、在本技術中,方法還包括:

35、當從目標插件裝載隊列中的目標位獲取的插件處理指令為插件拆卸指令時,獲取目標卸載插件、以及目標卸載插件的插件入口類引用、插件入口方法引用、插件classloader引用;

36、對目標卸載插件的插件入口類引用、插件入口方法引用、插件classloader引用進行清空處理;

37、在目標卸載插件的插件入口類引用、插件入口方法引用、插件classloader引用進行清空處理后,觸發(fā)垃圾回收機制,將目標卸載插件從java虛擬機中卸載,得到插件卸載結果。

38、第二方面,本技術提供一種插件配置裝置,包括:

39、獲取模塊,用于當從目標插件裝載隊列中的目標位獲取的插件處理指令為插件裝載指令時,根據(jù)插件裝載指令,插件裝載器獲取類加載器、以及類加載器的實例,目標插件裝載隊列為插件裝載隊列的鏡像隊列;

40、加載模塊,用于根據(jù)類加載器的實例,創(chuàng)建目標url類加載器,目標url類加載器的父類加載器為類加載器的實例;

41、執(zhí)行模塊,用于根據(jù)目標url類加載器,將待加載的代碼包載入java虛擬機,得到插件裝載結果,其中,待加載的代碼包為存儲在與插件裝載指令對應的插件代碼包。

42、第三方面,本技術提供一種電子設備,包括:處理器、以及與處理器通信連接的存儲器;

43、存儲器存儲計算機執(zhí)行指令;

44、處理器執(zhí)行存儲器存儲的計算機執(zhí)行指令,以實現(xiàn)本技術的方法。

45、第四方面,本技術提供一種計算機可讀存儲介質,包括:計算機可讀存儲介質中存儲有計算機執(zhí)行指令,計算機執(zhí)行指令被處理器執(zhí)行時用于實現(xiàn)本技術的方法。

46、本技術提供的一種插件配置方法、裝置、設備及存儲介質,通過當從目標插件裝載隊列中的目標位獲取的插件處理指令為插件裝載指令時,根據(jù)插件裝載指令,插件裝載器獲取類加載器、以及類加載器的實例,目標插件裝載隊列為插件裝載隊列的鏡像隊列;根據(jù)類加載器的實例,創(chuàng)建目標url類加載器,目標url類加載器的父類加載器為類加載器的實例;根據(jù)目標url類加載器,將待加載的代碼包載入java虛擬機,得到插件裝載結果,其中,待加載的代碼包為存儲在與插件裝載指令對應的插件代碼包手段,通過設置裝載隊列,對用戶的插件裝載和插件拆卸指令進行排序,避免出現(xiàn)插件依賴邏輯混亂問題,通過對內存鏡像進行磁盤鏡像映射,保留未裝載的數(shù)據(jù),避免因系統(tǒng)重啟或異常退出導致數(shù)據(jù)丟失引起的效率低下問題,同時,使用自定義的url類加載器提高了系統(tǒng)的安全性,此外,本技術使用熱插拔的服務框架,系統(tǒng)可以在運行時動態(tài)的加載或卸載插件,實現(xiàn)系統(tǒng)的靈活擴展和功能的動態(tài)更新,使得本發(fā)明適用于自動巡檢等組件化程序熱更新場景。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1