[發(fā)明專利]一種資源泄露檢測(cè)的方法及裝置在審
| 申請(qǐng)?zhí)枺?/td> | 201811339180.0 | 申請(qǐng)日: | 2018-11-12 |
| 公開(kāi)(公告)號(hào): | CN109542778A | 公開(kāi)(公告)日: | 2019-03-29 |
| 發(fā)明(設(shè)計(jì))人: | 周璐;戴康;呂蘇;歐鵬;翟威;陸寄豪 | 申請(qǐng)(專利權(quán))人: | 中國(guó)銀聯(lián)股份有限公司 |
| 主分類號(hào): | G06F11/36 | 分類號(hào): | G06F11/36 |
| 代理公司: | 北京同達(dá)信恒知識(shí)產(chǎn)權(quán)代理有限公司 11291 | 代理人: | 黃志華 |
| 地址: | 200135 *** | 國(guó)省代碼: | 上海;31 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 資源數(shù)據(jù) 資源泄露 匹配 應(yīng)用程序 預(yù)設(shè) 檢測(cè) 數(shù)據(jù)操作 唯一標(biāo)識(shí) 資源匹配 資源申請(qǐng) 資源釋放 應(yīng)用程序代碼 源代碼 代碼發(fā)送 代碼位置 預(yù)先設(shè)置 資源獲取 失敗 感知 | ||
本發(fā)明公開(kāi)了一種資源泄露檢測(cè)的方法及裝置,該方法包括獲取資源數(shù)據(jù),資源數(shù)據(jù)是位于應(yīng)用程序的預(yù)設(shè)代碼位置上的資源獲取代碼發(fā)送的,資源數(shù)據(jù)包括數(shù)據(jù)操作類型和唯一標(biāo)識(shí),根據(jù)資源數(shù)據(jù)的數(shù)據(jù)操作類型和唯一標(biāo)識(shí)以及預(yù)設(shè)的資源匹配規(guī)則,對(duì)資源數(shù)據(jù)進(jìn)行匹配,資源匹配規(guī)則是預(yù)先設(shè)置的資源申請(qǐng)操作與資源釋放操作的對(duì)應(yīng)關(guān)系,若匹配失敗,則確定資源數(shù)據(jù)存在異常。通過(guò)預(yù)設(shè)的資源申請(qǐng)操作和資源釋放操作的對(duì)應(yīng)關(guān)系來(lái)匹配獲取的資源數(shù)據(jù),當(dāng)匹配失敗后,可以確定資源數(shù)據(jù)存在異常,由于無(wú)需改變應(yīng)用程序的源代碼,做到在應(yīng)用程序無(wú)感知的情況下完成資源泄露檢測(cè),降低了對(duì)應(yīng)用程序代碼的影響,提高資源泄露檢測(cè)的準(zhǔn)確性。
技術(shù)領(lǐng)域
本發(fā)明實(shí)施例涉及代碼檢測(cè)技術(shù)領(lǐng)域,尤其涉及一種資源泄露檢測(cè)的方法及裝置。
背景技術(shù)
資源泄漏指程序在運(yùn)行過(guò)程中申請(qǐng)了某項(xiàng)資源,如內(nèi)存、文件句柄、數(shù)據(jù)庫(kù)連接等,但在資源使用結(jié)束后沒(méi)有進(jìn)行釋放,使得資源無(wú)法被回收和再利用,導(dǎo)致程序占用資源隨運(yùn)行時(shí)間不斷增長(zhǎng)的現(xiàn)象。資源泄漏持續(xù)消耗系統(tǒng)資源,輕則導(dǎo)致程序運(yùn)行速度不斷減慢,而一旦泄漏資源達(dá)到可用資源上限,會(huì)引起應(yīng)用崩潰、系統(tǒng)宕機(jī)、服務(wù)器癱瘓等嚴(yán)重后果。
由于資源使用情況對(duì)于開(kāi)發(fā)、測(cè)試、用戶不是直觀可見(jiàn)的,且資源泄漏早期對(duì)于應(yīng)用程序功能無(wú)直接影響,在可用資源達(dá)到上限前,存在泄漏現(xiàn)象的程序運(yùn)行情況可能完全正常,因此一直以來(lái)資源泄漏問(wèn)題難以被識(shí)別和定位,而一旦爆發(fā)基本上都會(huì)造成災(zāi)難性的后果。資源泄漏問(wèn)題已成為業(yè)界痛點(diǎn)。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種資源泄露檢測(cè)的方法及裝置,用以實(shí)現(xiàn)無(wú)需改變應(yīng)用程序的源代碼,降低了對(duì)應(yīng)用程序代碼的影響,提高資源泄露檢測(cè)的準(zhǔn)確性。
本發(fā)明實(shí)施例提供的一種資源泄露檢測(cè)的方法,包括:
獲取資源數(shù)據(jù),所述資源數(shù)據(jù)是位于應(yīng)用程序的預(yù)設(shè)代碼位置上的資源獲取代碼發(fā)送的;所述資源數(shù)據(jù)包括數(shù)據(jù)操作類型和唯一標(biāo)識(shí);
根據(jù)所述資源數(shù)據(jù)的數(shù)據(jù)操作類型和唯一標(biāo)識(shí)以及預(yù)設(shè)的資源匹配規(guī)則,對(duì)所述資源數(shù)據(jù)進(jìn)行匹配;所述資源匹配規(guī)則是預(yù)先設(shè)置的資源申請(qǐng)操作與資源釋放操作的對(duì)應(yīng)關(guān)系;
若匹配失敗,則確定所述資源數(shù)據(jù)存在異常。
通過(guò)預(yù)設(shè)的資源申請(qǐng)操作和資源釋放操作的對(duì)應(yīng)關(guān)系來(lái)匹配獲取的資源數(shù)據(jù),當(dāng)匹配失敗后,可以確定資源數(shù)據(jù)存在異常,由于無(wú)需改變應(yīng)用程序的源代碼,做到在應(yīng)用程序無(wú)感知的情況下完成資源泄露檢測(cè),降低了對(duì)應(yīng)用程序代碼的影響,提高資源泄露檢測(cè)的準(zhǔn)確性。
可選的,所述根據(jù)所述資源數(shù)據(jù)的數(shù)據(jù)操作類型以及預(yù)設(shè)的資源匹配規(guī)則,對(duì)所述資源數(shù)據(jù)進(jìn)行匹配,包括:
若所述資源數(shù)據(jù)的數(shù)據(jù)操作類型為資源申請(qǐng)操作,則將所述資源數(shù)據(jù)添加到活躍資源列表;
若所述資源數(shù)據(jù)的數(shù)據(jù)操作類型為資源釋放操作,則對(duì)所述活躍資源列表進(jìn)行掃描,查找與所述資源釋放操作對(duì)應(yīng)的資源數(shù)據(jù)的唯一標(biāo)識(shí)一致的申請(qǐng)資源操作;若查找成功,則確定匹配成功,否則確定匹配失敗。
可選的,所述方法還包括:
周期性的掃描所述活躍資源列表,檢查所述活躍資源列表中是否存在時(shí)間超過(guò)預(yù)設(shè)閾值的資源數(shù)據(jù),若存在,則確定所述資源數(shù)據(jù)存在資源泄露。
可選的,在確定所述資源數(shù)據(jù)存在異常之后,還包括:
將所述資源數(shù)據(jù)刪除,并發(fā)出預(yù)警信息。
可選的,在所述獲取資源數(shù)據(jù)之前,還包括:
在所述應(yīng)用程序的預(yù)設(shè)代碼位置上注入資源獲取代碼。
相應(yīng)的,本發(fā)明實(shí)施例還提供了一種資源泄露檢測(cè)的裝置,包括:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國(guó)銀聯(lián)股份有限公司,未經(jīng)中國(guó)銀聯(lián)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811339180.0/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測(cè);錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過(guò)測(cè)試作故障硬件的檢測(cè)或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過(guò)處理作錯(cuò)誤檢測(cè)、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過(guò)軟件的測(cè)試或調(diào)試防止錯(cuò)誤
- 數(shù)據(jù)資源身份
- 一種海量數(shù)據(jù)資源庫(kù)的處理方法和裝置
- 一種面向數(shù)據(jù)流通的結(jié)構(gòu)化數(shù)據(jù)確權(quán)方法
- 數(shù)據(jù)信道資源分配
- 森林資源資產(chǎn)核算方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 管理數(shù)據(jù)資源
- 一種數(shù)據(jù)資源添加方法及裝置
- 一種數(shù)據(jù)資源的服務(wù)系統(tǒng)和數(shù)據(jù)資源的監(jiān)控方法及裝置
- 資源調(diào)撥數(shù)據(jù)的生成方法和裝置
- 資源數(shù)據(jù)推薦方法和裝置,推薦資源數(shù)據(jù)生成方法和裝置
- 軟空頻復(fù)用方法與裝置、基站
- 物理資源分配方法和裝置
- 基于單個(gè)量子糾纏態(tài)測(cè)量相關(guān)性的抗信息泄露量子對(duì)話協(xié)議
- 應(yīng)用程序資源泄露的檢測(cè)方法及移動(dòng)終端、存儲(chǔ)介質(zhì)
- 一種系統(tǒng)資源泄露的檢測(cè)方法和裝置
- 一種資源泄露檢測(cè)的方法及裝置
- 資源傳輸方法、設(shè)備及系統(tǒng)
- 一種基于Android資源表的資源泄露檢測(cè)方法
- 一種系統(tǒng)資源監(jiān)測(cè)方法、裝置、設(shè)備及機(jī)器可讀存儲(chǔ)介質(zhì)
- 一種泄露數(shù)據(jù)探測(cè)方法、裝置、設(shè)備及介質(zhì)
- 對(duì)虛擬化應(yīng)用程序的基于策略的訪問(wèn)
- 應(yīng)用程序執(zhí)行、應(yīng)用程序提供裝置和應(yīng)用程序分發(fā)方法
- 一種軟件保護(hù)方法、裝置及系統(tǒng)
- 應(yīng)用程序的開(kāi)發(fā)方法和系統(tǒng)
- 應(yīng)用程序的擴(kuò)展方法及裝置
- 一種應(yīng)用程序商店的應(yīng)用程序發(fā)布方法及裝置
- 一種應(yīng)用程序的監(jiān)控方法、裝置及系統(tǒng)
- 用于對(duì)虛擬化應(yīng)用程序的基于策略的訪問(wèn)的方法和系統(tǒng)
- 應(yīng)用程序控制方法、裝置、終端及存儲(chǔ)介質(zhì)
- 一種應(yīng)用程序安裝、卸載方法及通信終端





