[發明專利]獲取程序性能消耗信息的方法、裝置及系統有效
| 申請號: | 201310325258.4 | 申請日: | 2013-07-30 |
| 公開(公告)號: | CN104346148B | 公開(公告)日: | 2017-10-20 |
| 發明(設計)人: | 湯鑫斌 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 北京潤澤恒知識產權代理有限公司11319 | 代理人: | 蘇培華 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 獲取 程序 性能 消耗 信息 方法 裝置 系統 | ||
1.一種獲取程序性能消耗信息的方法,其特征在于,包括:
接收攜帶有待分析目標信息的分析指令,所述待分析目標信息包括待分析進程的信息、待分析方法的信息以及所述待分析方法所屬的類的信息;
根據所述待分析目標信息,確定待分析方法;
在所述待分析進程已加載的類中查找待分析方法的字節碼,通過字節碼操縱框架對所述待分析方法進行字節碼增強,以便在待分析方法開始被調用時記錄方法開始時間,將方法開始時間及方法標識信息保存到指定位置,在待分析方法返回時記錄方法返回時間,將方法返回時間及方法標識信息保存到所述指定位置;
根據所述指定位置記錄的信息,計算每次調用過程中涉及的各個待分析方法的性能消耗分析結果。
2.根據權利要求1所述的方法,其特征在于,所述待分析方法為一個或多個,所述待分析方法的信息包括各個待分析方法的標識信息;
所述根據所述待分析目標信息,確定待分析方法包括:
根據所述各個待分析方法的標識信息,確定待分析方法。
3.根據權利要求1所述的方法,其特征在于,所述待分析方法為多個方法,且各個待分析方法根據調用關系可組成調用關系樹,所述待分析方法的信息包括入口方法的標識信息,以及所需分析的層次深度;所述入口方法為所述調用關系樹的根節點對應的待分析方法;
所述根據所述待分析目標信息,確定待分析方法包括:
在所述待分析進程加載的類中查找所述入口方法對應的類的字節碼;
基于字節碼進行靜態的調用層次分析,確定從所述入口方法開始每一層上的方法分別依賴的方法及其對應的類,直到分析到所述層次深度;
根據各層上確定出的方法確定所述待分析方法。
4.根據權利要求3所述的方法,其特征在于,所述根據各層上確定出的方法確定所述待分析方法包括:
將各個層上確定出的方法全部確定為所述待分析方法。
5.根據權利要求3所述的方法,其特征在于,所述待分析方法的信息還包括目標包的名稱信息,所述根據各層上確定出的方法確定所述待分析方法包括:
將各個層上確定出的所述方法中,路徑中包含所述目標包的名稱信息的方法確定為所述待分析方法。
6.根據權利要求3所述的方法,其特征在于,所述根據所述指定位置記錄的信息,計算每次調用過程中涉及的各個待分析方法的性能消耗分析結果,包括:
每次有待分析方法的返回時間被記錄到所述指定位置時,判斷該返回的方法是否為所述入口方法;
如果是,則確定一次調用過程結束,并對此次調用過程中涉及的各個待分析方法的性能消耗分析結果進行計算。
7.根據權利要求1至6任一項所述的方法,其特征在于,還包括:
從所述指定位置讀取所述待分析方法分別在每次調用過程中的性能消耗分析結果并返回。
8.一種獲取程序性能消耗信息的方法,其特征在于,包括:
接收用戶提交的待分析目標信息;所述待分析目標信息包括待分析進程的信息、待分析方法的信息以及所述待分析方法所屬的類的信息;
向指定端口發送攜帶有所述待分析目標信息的分析指令;
觸發所述待分析進程對應的Java虛擬機加載指定的代理模塊,以便通過所述代理模塊執行以下步驟:通過創建Server Socket類監聽所述指定端口;通過所述指定端口監聽到所述分析指令后,根據所述待分析目標信息,確定待分析方法;在所述待分析進程已加載的類中查找待分析方法的字節碼,通過字節碼操縱框架對所述待分析方法進行字節碼增強,以便在待分析方法開始被調用時記錄方法開始時間,將方法開始時間及方法標識信息保存到指定位置,在待分析方法返回時記錄方法返回時間,將方法返回時間及方法標識信息保存到所述指定位置;根據所述指定位置記錄的信息,計算每次調用過程中涉及的各個待分析方法的性能消耗分析結果,并保存到所述指定位置;從所述指定位置讀取所述待分析方法的性能消耗分析結果并返回;
接收到所述代理模塊返回的性能消耗分析結果之后進行展現。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310325258.4/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:基于情景的業務驅動模型構建方法
- 下一篇:一種跨平臺轉換應用代碼的方法及裝置





