[發(fā)明專利]一種檢測程序性能瓶頸的方法、裝置及計算機設(shè)備在審
| 申請?zhí)枺?/td> | 201911419520.5 | 申請日: | 2019-12-31 |
| 公開(公告)號: | CN113127314A | 公開(公告)日: | 2021-07-16 |
| 發(fā)明(設(shè)計)人: | 馬鵬飛;王漢雄 | 申請(專利權(quán))人: | 航天信息股份有限公司 |
| 主分類號: | G06F11/34 | 分類號: | G06F11/34 |
| 代理公司: | 北京同達信恒知識產(chǎn)權(quán)代理有限公司 11291 | 代理人: | 金銀花 |
| 地址: | 100195 北京市*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 檢測 程序 性能 瓶頸 方法 裝置 計算機 設(shè)備 | ||
本發(fā)明公開了一種檢測程序性能瓶頸的方法、裝置及計算機設(shè)備,用于解決檢測程序性能瓶頸準確性較低的問題。該方法包括:在目標程序中預(yù)定業(yè)務(wù)類對應(yīng)的業(yè)務(wù)請求運行時,對預(yù)定業(yè)務(wù)類中各個業(yè)務(wù)方法對應(yīng)的程序添加起始標識符和結(jié)束標識符;獲取滿足預(yù)定采樣頻率的業(yè)務(wù)請求對應(yīng)的調(diào)用信息,調(diào)用信息至少包括方法名以及各個業(yè)務(wù)方法分別對應(yīng)的起始標識符的獲得時刻和結(jié)束標識符的獲得時刻;根據(jù)各個業(yè)務(wù)方法分別對應(yīng)的起始標識符的獲得時刻和結(jié)束標識符的獲得時刻,確定預(yù)定業(yè)務(wù)類的調(diào)用關(guān)系鏈和各個業(yè)務(wù)方法的運行時長,以確定目標程序中的程序性能瓶頸,程序性能瓶頸用于表征調(diào)用關(guān)系鏈中運行時長大于業(yè)務(wù)方法響應(yīng)閾值的業(yè)務(wù)方法對應(yīng)的程序。
技術(shù)領(lǐng)域
本發(fā)明涉及計算機技術(shù)領(lǐng)域,尤其涉及一種檢測程序性能瓶頸的方法、裝置及計算機設(shè)備。
背景技術(shù)
現(xiàn)有技術(shù)中,當程序編程完成之后,還需要對程序進行測試,以對程序進行程序優(yōu)化處理。
然而,現(xiàn)有技術(shù)中在使用測試工具對程序進行性能測試時,如果發(fā)現(xiàn)系統(tǒng)資源(如CPU、內(nèi)存等)充足而待測功能的響應(yīng)時間過長,且達不到預(yù)設(shè)的性能指標時,僅僅可以確定出程序中某個業(yè)務(wù)對應(yīng)的程序響應(yīng)時間過長,而無法準確的定位業(yè)務(wù)中各個業(yè)務(wù)方法的響應(yīng)時長,即無法準確定位程序的性能瓶頸,從而導(dǎo)致對程序優(yōu)化準確性較低且優(yōu)化效果差。
可見,現(xiàn)有技術(shù)中存在程序性能瓶頸檢測準確性較低的技術(shù)問題。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種檢測程序性能瓶頸的方法、裝置及計算機設(shè)備,用于解決檢測程序性能瓶頸準確性較低的問題。
第一方面,提供一種檢測程序性能瓶頸的方法,應(yīng)用于多種方法調(diào)用的程序檢測系統(tǒng),所述方法包括:
在目標程序中預(yù)定業(yè)務(wù)類對應(yīng)的業(yè)務(wù)請求運行時,對所述預(yù)定業(yè)務(wù)類中各個業(yè)務(wù)方法對應(yīng)的程序添加起始標識符和結(jié)束標識符,其中,所述業(yè)務(wù)類對應(yīng)的業(yè)務(wù)請求運行時所述各個業(yè)務(wù)方法調(diào)用運行;
獲取滿足預(yù)定采樣頻率的所述業(yè)務(wù)請求對應(yīng)的調(diào)用信息,其中,所述調(diào)用信息至少包括方法名以及所述預(yù)定業(yè)務(wù)類中各個業(yè)務(wù)方法分別對應(yīng)的起始標識符的獲得時刻和結(jié)束標識符的獲得時刻;
根據(jù)所述調(diào)用信息中各個業(yè)務(wù)方法分別對應(yīng)的起始標識符的獲得時刻和結(jié)束標識符的獲得時刻,確定所述預(yù)定業(yè)務(wù)類的調(diào)用關(guān)系鏈和所述各個業(yè)務(wù)方法的運行時長,其中,所述調(diào)用關(guān)系鏈用于表征所述預(yù)定關(guān)系類中各個業(yè)務(wù)方法的運行順序和運行關(guān)系;
根據(jù)所述調(diào)用關(guān)系鏈和所述各個業(yè)務(wù)方法的運行時長,確定所述目標程序中的程序性能瓶頸,其中,所述程序性能瓶頸用于表征所述調(diào)用關(guān)系鏈中運行時長大于業(yè)務(wù)方法響應(yīng)閾值的業(yè)務(wù)方法對應(yīng)的程序。
在一種可能的實施方式中,根據(jù)所述預(yù)定業(yè)務(wù)類中各個業(yè)務(wù)方法分別對應(yīng)的起始標識符的獲得時刻和結(jié)束標識符的獲得時刻,確定所述預(yù)定業(yè)務(wù)類的調(diào)用關(guān)系鏈,包括:
在第一方法的起始標識符的獲得時刻和結(jié)束標識符的獲得時刻之間,獲得第二方法的起始標識符,則確定所述第二方法為所述第一方法的內(nèi)部調(diào)用方法;其中,所述第一方法的初始標識符的獲得時刻為所述調(diào)用信息中各個方法的初始標識符獲得時刻中最小的時刻,所述第二方法為所述第一方法的內(nèi)部調(diào)用方法用于表征所述第一方法的運行時長中包括所述第二運行方法的運行時長的方法關(guān)系;
若在獲得所述第二方法的結(jié)束標識符的獲得時刻之后,讀出第三方法的起始標識符,且所述第二方法的結(jié)束標識符的獲得時刻和所述第三方法的初始標識符的獲得時刻相同,則確定所述第三方法為所述第二方法的相鄰方法,其中,所述第三方法的結(jié)束標識符的獲得時刻為所述調(diào)用信息中各個方法的結(jié)束標識符的獲得時刻中最大的時刻,所述第三方法為所述第二方法的所述相鄰方法用于表征所述第二方法運行結(jié)束之后運行所述第三方法的方法關(guān)系;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于航天信息股份有限公司,未經(jīng)航天信息股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911419520.5/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





