[發(fā)明專利]一種線程池的運(yùn)行狀態(tài)獲取方法、裝置和電子設(shè)備有效
| 申請(qǐng)?zhí)枺?/td> | 202110493218.5 | 申請(qǐng)日: | 2021-05-07 |
| 公開(公告)號(hào): | CN113377446B | 公開(公告)日: | 2023-07-28 |
| 發(fā)明(設(shè)計(jì))人: | 馮宏宇;黎華兵;萬冬冬;王韶峰 | 申請(qǐng)(專利權(quán))人: | 北京水滴科技集團(tuán)有限公司 |
| 主分類號(hào): | G06F9/445 | 分類號(hào): | G06F9/445;G06F11/30;G06F8/20 |
| 代理公司: | 北京匯思誠業(yè)知識(shí)產(chǎn)權(quán)代理有限公司 11444 | 代理人: | 蘇勝 |
| 地址: | 100102 北京市*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 線程 運(yùn)行 狀態(tài) 獲取 方法 裝置 電子設(shè)備 | ||
本發(fā)明實(shí)施例涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種線程池的運(yùn)行狀態(tài)獲取方法、裝置和電子設(shè)備。其中,上述方法包括:根據(jù)原生線程池,構(gòu)建支持鏈路追蹤的增強(qiáng)線程池;將增強(qiáng)線程池注入Spring容器中,并獲取增強(qiáng)線程池的bean名稱;響應(yīng)于線程池監(jiān)控服務(wù)的啟動(dòng),在配置文件中添加待監(jiān)控線程池的bean名稱;對(duì)所述待監(jiān)控的增強(qiáng)線程池進(jìn)行反射,確定待監(jiān)控原生線程池,并獲取待監(jiān)控原生線程池的運(yùn)行狀態(tài)參數(shù);如果待監(jiān)控原生線程池異常,則向監(jiān)控設(shè)備發(fā)送告警信息。本發(fā)明實(shí)施例具備獲取線程池運(yùn)行狀態(tài)參數(shù)的能力,能夠?qū)崿F(xiàn)對(duì)線程池運(yùn)行狀態(tài)的監(jiān)控。
【技術(shù)領(lǐng)域】
本發(fā)明實(shí)施例涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種線程池的運(yùn)行狀態(tài)獲取方法、裝置和電子設(shè)備。
【背景技術(shù)】
線程,程序執(zhí)行流的最小執(zhí)行單位,是進(jìn)程中的實(shí)際運(yùn)作單位。在一個(gè)應(yīng)用程序中,用戶需要多次使用線程,也就意味著,用戶需要多次創(chuàng)建并銷毀線程。而創(chuàng)建并銷毀線程的過程勢(shì)必會(huì)消耗內(nèi)存,在Java中,內(nèi)存資源是極其寶貴的,所以,Java中開辟出了一種管理線程的概念,這個(gè)概念叫做線程池。線程池可以方便地管理線程,減少內(nèi)存的消耗。
在現(xiàn)有技術(shù)中,以Java為開發(fā)語言,大量使用線程池去提升系統(tǒng)的性能。但在分布式系統(tǒng)下,如何追蹤線程以及獲取線程池的運(yùn)行狀態(tài)參數(shù)是一個(gè)需要解決的問題。
【發(fā)明內(nèi)容】
有鑒于此,本發(fā)明實(shí)施例提供了一種線程池的運(yùn)行狀態(tài)獲取方法、裝置和電子設(shè)備,用以解決現(xiàn)有技術(shù)中無法直接獲取線程池的運(yùn)行狀態(tài)參數(shù)的問題。
第一方面,本發(fā)明實(shí)施例提供一種線程池的運(yùn)行狀態(tài)獲取方法,包括:
根據(jù)原生線程池,構(gòu)建支持鏈路追蹤的增強(qiáng)線程池;
將所述增強(qiáng)線程池注入Spring容器中,并獲取所述增強(qiáng)線程池在所述Spring容器中的bean名稱;
響應(yīng)于線程池監(jiān)控服務(wù)的啟動(dòng),在配置文件中添加待監(jiān)控線程池的bean名稱;
根據(jù)所述配置文件中的bean名稱,確定待監(jiān)控的增強(qiáng)線程池;
對(duì)所述待監(jiān)控的增強(qiáng)線程池進(jìn)行反射,確定待監(jiān)控原生線程池,并獲取所述待監(jiān)控原生線程池的運(yùn)行狀態(tài)參數(shù);
如果根據(jù)所述運(yùn)行狀態(tài)參數(shù),確定所述待監(jiān)控原生線程池異常,則向監(jiān)控設(shè)備發(fā)送告警信息。
其中一種可能的實(shí)現(xiàn)方式中,根據(jù)原生線程池,構(gòu)建支持鏈路追蹤的增強(qiáng)線程池,包括:
使用zipkin中間件對(duì)所述原生線程池進(jìn)行代理增強(qiáng),得到所述支持鏈路追蹤的增強(qiáng)線程池。
其中一種可能的實(shí)現(xiàn)方式中,所述線程池監(jiān)控服務(wù)的啟動(dòng)之后,所述方法還包括:
啟動(dòng)定時(shí),在所述定時(shí)時(shí)間范圍內(nèi)執(zhí)行獲取所述運(yùn)行狀態(tài)參數(shù)的步驟。
其中一種可能的實(shí)現(xiàn)方式中,所述線程池監(jiān)控服務(wù)的程序代碼包含于采用maven打包而成的jar包中,通過觸發(fā)所述jar包啟動(dòng)所述線程池監(jiān)控服務(wù)。
其中一種可能的實(shí)現(xiàn)方式中,對(duì)所述待監(jiān)控的增強(qiáng)線程池進(jìn)行反射,確定原生線程池包括:
對(duì)所述待監(jiān)控的增強(qiáng)線程池進(jìn)行jdk反射,以確定原生線程池。
第二方面,本發(fā)明實(shí)施例提供一種線程池的運(yùn)行狀態(tài)獲取裝置,包括:
構(gòu)建模塊,用于根據(jù)原生線程池,構(gòu)建支持鏈路追蹤的增強(qiáng)線程池;
注入模塊,用于將所述增強(qiáng)線程池注入Spring容器中,并獲取所述增強(qiáng)線程池在所述Spring容器中的bean名稱;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京水滴科技集團(tuán)有限公司,未經(jīng)北京水滴科技集團(tuán)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110493218.5/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 在多線程處理器中用于高速線程間中斷的方法和設(shè)備
- 一種多線程系統(tǒng)中實(shí)現(xiàn)實(shí)時(shí)監(jiān)控各線程狀態(tài)的方法
- 移動(dòng)終端系統(tǒng)線程池實(shí)現(xiàn)方法及裝置
- 一種基于策略模式的信號(hào)發(fā)生器多線程管理方法
- 多線程并發(fā)處理方法和多線程并發(fā)處理系統(tǒng)
- 分布式系統(tǒng)的線程管理方法和裝置
- 線程執(zhí)行方法、裝置、終端及存儲(chǔ)介質(zhì)
- 線程監(jiān)控方法、裝置、電子設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 一種多核系統(tǒng)中多線程調(diào)度方法、裝置及設(shè)備
- 線程間通信方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 運(yùn)行控制裝置及運(yùn)行控制方法
- 運(yùn)行支援裝置、運(yùn)行支援系統(tǒng)以及運(yùn)行支援程序
- 列車運(yùn)行處理方法、運(yùn)行處理裝置和運(yùn)行調(diào)度系統(tǒng)
- 運(yùn)行監(jiān)測(cè)系統(tǒng)及運(yùn)行監(jiān)測(cè)方法
- 運(yùn)行控制裝置及運(yùn)行控制方法
- 運(yùn)行曲線制作裝置、運(yùn)行輔助裝置以及運(yùn)行控制裝置
- 運(yùn)行支持裝置、車輛、運(yùn)行管理裝置和運(yùn)行支持方法
- 運(yùn)行計(jì)劃方法、運(yùn)行控制裝置和運(yùn)行計(jì)劃系統(tǒng)
- 運(yùn)行控制裝置、運(yùn)行管理系統(tǒng)、運(yùn)行控制方法以及車輛
- 自動(dòng)建模運(yùn)行系統(tǒng)及運(yùn)行方法
- 狀態(tài)檢測(cè)裝置及狀態(tài)檢測(cè)方法
- 狀態(tài)估計(jì)裝置以及狀態(tài)估計(jì)方法
- 經(jīng)由次級(jí)狀態(tài)推斷管理狀態(tài)
- 狀態(tài)估計(jì)裝置及狀態(tài)估計(jì)方法
- 狀態(tài)估計(jì)裝置、狀態(tài)估計(jì)方法
- 狀態(tài)預(yù)測(cè)裝置以及狀態(tài)預(yù)測(cè)方法
- 狀態(tài)推定裝置、狀態(tài)推定方法和狀態(tài)推定程序
- 狀態(tài)檢測(cè)系統(tǒng)及狀態(tài)檢測(cè)方法
- 狀態(tài)判定裝置、狀態(tài)判定方法以及狀態(tài)判定程序
- 狀態(tài)判斷裝置以及狀態(tài)判斷方法





