[發明專利]一種基于分布式應用的性能診斷方法、裝置及設備在審
| 申請號: | 202110183887.2 | 申請日: | 2021-02-10 |
| 公開(公告)號: | CN112860517A | 公開(公告)日: | 2021-05-28 |
| 發明(設計)人: | 張學舟;黃璽磊;王雙龍;胡曉菲 | 申請(專利權)人: | 中國工商銀行股份有限公司 |
| 主分類號: | G06F11/30 | 分類號: | G06F11/30;G06F11/36;G06F9/455 |
| 代理公司: | 北京三友知識產權代理有限公司 11127 | 代理人: | 任默聞;孫乳筍 |
| 地址: | 100140 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 分布式 應用 性能 診斷 方法 裝置 設備 | ||
1.一種基于分布式應用的性能診斷方法,其特征在于,包括:
在所述分布式應用的各個進程中設置診斷插件;所述診斷插件,用于獲取對應的目標接口的調用信息;
分別向各個診斷插件發送診斷命令;所述診斷命令,用于指示診斷插件收集并上送所述目標接口的調用信息;
在接收到所述調用信息的情況下,將所述調用信息與預設性能指標進行比對,以對所述分布式應用的性能進行診斷。
2.如權利要求1所述的方法,其特征在于,所述調用信息包括執行耗時、吞吐量、成功率中的至少一種。
3.如權利要求1所述的方法,其特征在于,所述診斷命令,由命令讀寫單元發送至診斷插件;所述分別向各個診斷插件發送診斷命令,包括:
在均衡各個命令讀寫單元的負載的情況下,發送所述診斷命令。
4.如權利要求1所述的方法,其特征在于,所述調用信息通過以下方式獲取:
基于所述診斷命令對進程中指定的類中的方法動態注入診斷邏輯;
在所述方法被調用的情況下,接收被觸發的診斷邏輯上送的調用信息。
5.如權利要求4所述的方法,其特征在于,所述基于所述診斷命令對指定的類中的方法動態注入診斷邏輯之前,還包括:
基于應用名、組件名、實例號確定性能診斷粒度;所述性能診斷粒度用于確定診斷過程的作用范圍。
6.如權利要求4所述的方法,其特征在于,所述基于所述診斷命令對指定的類中的方法動態注入診斷邏輯,包括:
獲取所述診斷命令對應的目標接口;
將所述目標接口與歷史作用接口進行比較;所述歷史作用接口包括上一次注入診斷邏輯的接口;
基于比較結果在目標接口中新增診斷邏輯或取消診斷邏輯。
7.如權利要求6所述的方法,其特征在于,所述基于比較結果在目標接口中新增診斷邏輯,包括:
獲取所述診斷插件對應的進程中已加載的類所構成的類集合;
在所述類集合中包含有所述目標接口對應的類的情況下,創建并注冊對應于所述進程的文件轉換器;
針對所述文件轉化器執行類定義重轉換操作以重新加載該類的定義;
觸發所述文件轉換器的回調處理方法以讀取該類的當前字節碼;
緩存所述當前字節碼;
記錄所述目標接口的入參值、調用耗時、返回值或拋出異常;
為該類生成插樁后的字節碼以替換所述當前字節碼。
8.如權利要求6所述的方法,其特征在于,所述基于比較結果在目標接口中取消診斷邏輯,包括:
獲取所述診斷插件對應的進程中已加載的類所構成的類集合;
在所述類集合中包含有所述目標接口對應的類的情況下,創建并注冊對應于所述進程的文件轉換器;
針對所述文件轉化器執行類定義重轉換操作以重新加載該類的定義;
觸發所述文件轉換器的回調處理方法以讀取該類的原始字節碼;
利用所述原始字節碼替換該類的定義;
刪除所述原始字節碼并解注冊所述文件轉換器。
9.如權利要求4所述的方法,其特征在于,所述在所述方法被調用的情況下,接收被觸發的診斷邏輯上送的調用信息,包括:
在所述目標接口被調用的情況下,存儲當前時間戳;
記錄所述目標接口的入參值;
在所述目標接口完成對應的業務邏輯的情況下,記錄目標接口的返回值或異常值;
獲取所述目標接口調用結束時的結束時間戳;
根據所述當前時間戳和結束時間戳計算調用耗時;
將所述入參值、返回值或異常值、調用耗時作為調用信息反饋。
10.如權利要求1所述的方法,其特征在于,所述將所述調用信息與預設性能指標進行比對,包括:
將所述調用信息以可視化圖表的形式展示。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國工商銀行股份有限公司,未經中國工商銀行股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110183887.2/1.html,轉載請聲明來源鉆瓜專利網。





