国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      JavaWeb應(yīng)用性能診斷方法及裝置的制造方法

      文檔序號(hào):9452984閱讀:667來源:國知局
      Java Web應(yīng)用性能診斷方法及裝置的制造方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及應(yīng)用性能管理領(lǐng)域,尤其涉及一種Java Web應(yīng)用性能診斷方法、裝置及系統(tǒng)。
      【背景技術(shù)】
      [0002]Java是一種可以撰寫跨平臺(tái)應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,具有卓越的通用性、高效性、平臺(tái)移植性和安全性。Java Web是用Java技術(shù)來解決相關(guān)web互聯(lián)網(wǎng)領(lǐng)域的技術(shù)總和。
      [0003]為了監(jiān)控WEB服務(wù)器應(yīng)用的性能,存在兩類性能監(jiān)測工具。一類工具通過追蹤HTTP的請求過程來記錄應(yīng)用的性能、網(wǎng)絡(luò)信息和故障,此類工具具有可以從服務(wù)器外部發(fā)起、模擬用戶發(fā)起網(wǎng)絡(luò)請求、不針對具體的服務(wù)器編程語言等特征。然而此類工具有以下幾個(gè)缺點(diǎn):1)模擬用戶發(fā)起請求,如果采樣數(shù)量少,數(shù)據(jù)會(huì)不準(zhǔn)確,如果采樣數(shù)量大,會(huì)對服務(wù)器造成額外的壓力2)僅能記錄應(yīng)用的總響應(yīng)性能,無法更深入的追蹤到代碼級別,出現(xiàn)服務(wù)器性能問題時(shí)無法定位具體原因。
      [0004]另一類工具可對應(yīng)用服務(wù)器的性能進(jìn)行級監(jiān)控,例如JProfiler。此類工具可以查看當(dāng)前應(yīng)用的對象、對象引用、內(nèi)存、CPU使用情況、線程、線程運(yùn)行情況(阻塞、等待等),同時(shí)可以查找應(yīng)用內(nèi)存使用得熱點(diǎn),即:哪個(gè)對象占用的內(nèi)存比較多;或者CPU熱點(diǎn),即:哪個(gè)方法占用較大的CPU資源。然而此類工具有以下幾個(gè)缺點(diǎn):1)系統(tǒng)資源消耗大;2)僅監(jiān)控性能數(shù)據(jù),無法提供故障信息;3)性能數(shù)據(jù)不直觀,只有函數(shù)名稱及其對應(yīng)性能,沒有按照用途進(jìn)行分類,大部分沒有專業(yè)技能的人員不了解數(shù)據(jù)含義。

      【發(fā)明內(nèi)容】

      [0005]針對傳統(tǒng)技術(shù)的上述缺陷,本發(fā)明實(shí)施例提供一種Java Web應(yīng)用性能診斷方法及
      目-ο
      [0006]本發(fā)明實(shí)施例提供一種Java Web應(yīng)用性能診斷方法,方法包括如下步驟:
      [0007]獲取處理HTTP請求的應(yīng)用的應(yīng)用配置信息,所述應(yīng)用配置信息包括是否開啟監(jiān)控服務(wù)開關(guān)、是否開啟記錄代碼執(zhí)行過程開關(guān)、代碼執(zhí)行時(shí)間閾值;
      [0008]根據(jù)所述應(yīng)用配置信息對所述應(yīng)用開啟監(jiān)控服務(wù);
      [0009]所述應(yīng)用結(jié)束時(shí),獲取所述應(yīng)用的代碼執(zhí)行時(shí)間;
      [0010]根據(jù)所述應(yīng)用配置信息和所述應(yīng)用的代碼執(zhí)行時(shí)間記錄所述應(yīng)用的代碼的執(zhí)行過程數(shù)據(jù)。
      [0011]在另一實(shí)施例中,所述獲取處理HTTP請求的應(yīng)用的應(yīng)用配置信息,包括:
      [0012]獲取HTTP請求;
      [0013]根據(jù)所述HTTP請求獲取請求的URL地址;
      [0014]根據(jù)所述URL地址從哈希表中獲取處理所述HTTP請求的應(yīng)用的應(yīng)用配置信息,所述哈希表中存儲(chǔ)了所述URL地址與所述應(yīng)用的應(yīng)用配置信息的映射關(guān)系。
      [0015]在另一實(shí)施例中,所述根據(jù)所述應(yīng)用配置信息對所述應(yīng)用開啟監(jiān)控服務(wù),包括:
      [0016]根據(jù)所述應(yīng)用配置信息,判斷所述應(yīng)用的監(jiān)控服務(wù)開關(guān)是否處于開啟狀態(tài);
      [0017]若所述監(jiān)控服務(wù)開關(guān)處于開啟狀態(tài),則開啟針對所述應(yīng)用的監(jiān)控服務(wù)。
      [0018]在另一實(shí)施例中,所述根據(jù)所述應(yīng)用配置信息和所述應(yīng)用的代碼執(zhí)行時(shí)間記錄所述應(yīng)用的代碼的執(zhí)行過程數(shù)據(jù),包括:
      [0019]判斷所述應(yīng)用的代碼執(zhí)行時(shí)間是否大于所述代碼執(zhí)行時(shí)間閾值,且所述應(yīng)用的所述記錄代碼執(zhí)行過程開關(guān)開啟;
      [0020]若是,則記錄所述應(yīng)用的代碼的執(zhí)行過程數(shù)據(jù)。
      [0021]在另一實(shí)施例中,所述應(yīng)用包括Http Servlet、數(shù)據(jù)庫訪問、Framework、Memcache>NoSql、Except1n。
      [0022]在本實(shí)施例的技術(shù)方案中,通過獲取處理HTTP請求的應(yīng)用的應(yīng)用配置信息,根據(jù)應(yīng)用配置信息對該應(yīng)用開啟監(jiān)控服務(wù);應(yīng)用結(jié)束時(shí),獲取該應(yīng)用的代碼執(zhí)行時(shí)間;根據(jù)應(yīng)用配置信息和應(yīng)用的代碼執(zhí)行時(shí)間記錄該應(yīng)用的代碼的執(zhí)行過程數(shù)據(jù)。實(shí)現(xiàn)依據(jù)不同的的HTTP請求中的URL地址從Java Web應(yīng)用性能診斷裝置中讀取動(dòng)態(tài)的應(yīng)用設(shè)置,避免研發(fā)人員的介入。
      [0023]本發(fā)明實(shí)施例提供一種Java Web應(yīng)用性能診斷裝置,所述裝置包括:
      [0024]獲取模塊,用于獲取處理HTTP請求的應(yīng)用的應(yīng)用配置信息,所述應(yīng)用配置信息包括是否開啟監(jiān)控服務(wù)開關(guān)、是否開啟記錄代碼執(zhí)行過程開關(guān)、代碼執(zhí)行時(shí)間閾值;
      [0025]監(jiān)控模塊,用于根據(jù)所述應(yīng)用配置信息對所述應(yīng)用開啟監(jiān)控服務(wù);
      [0026]處理模塊,用于所述應(yīng)用結(jié)束時(shí),獲取所述應(yīng)用的代碼執(zhí)行時(shí)間;
      [0027]記錄模塊,用于根據(jù)所述應(yīng)用配置信息和所述應(yīng)用的代碼執(zhí)行時(shí)間記錄所述應(yīng)用的代碼的執(zhí)行過程數(shù)據(jù)。
      [0028]在另一實(shí)施例中,所述獲取模塊包括:
      [0029]第一獲取單元,用于獲取HTTP請求;
      [0030]第二獲取單元,用于根據(jù)所述HTTP請求獲取請求的URL地址;
      [0031 ] 第三獲取單元,用于根據(jù)所述URL地址從哈希表中獲取處理所述HTTP請求的應(yīng)用的應(yīng)用配置信息,所述哈希表中存儲(chǔ)了所述URL地址與所述應(yīng)用的應(yīng)用配置信息的映射關(guān)系。
      [0032]在另一實(shí)施例中,所述監(jiān)控模塊包括:
      [0033]第一判斷單元,用于根據(jù)所述應(yīng)用配置信息,判斷所述應(yīng)用的監(jiān)控服務(wù)開關(guān)是否處于開啟狀態(tài);
      [0034]監(jiān)控單元,用于若所述監(jiān)控服務(wù)開關(guān)處于開啟狀態(tài),則開啟針對所述應(yīng)用的監(jiān)控服務(wù)。
      [0035]在另一實(shí)施例中,所述記錄模塊包括:
      [0036]第二判斷單元,用于判斷所述應(yīng)用的代碼執(zhí)行時(shí)間是否大于所述代碼執(zhí)行時(shí)間閾值,且所述應(yīng)用的所述記錄代碼執(zhí)行過程開關(guān)開啟;
      [0037]記錄單元,用于若所述應(yīng)用的代碼執(zhí)行時(shí)間大于所述代碼執(zhí)行時(shí)間閾值,且所述應(yīng)用的所述記錄代碼執(zhí)行過程開關(guān)開啟,則記錄所述應(yīng)用的代碼的執(zhí)行過程數(shù)據(jù)。
      [0038]在另一實(shí)施例中,所述應(yīng)用包括Http Servlet、數(shù)據(jù)庫訪問、Framework、Memcacheλ NoSql、Except1n。
      [0039]在本實(shí)施例的技術(shù)方案中,通過獲取處理HTTP請求的應(yīng)用的應(yīng)用配置信息,根據(jù)應(yīng)用配置信息對該應(yīng)用開啟監(jiān)控服務(wù);應(yīng)用結(jié)束時(shí),獲取該應(yīng)用的代碼執(zhí)行時(shí)間;根據(jù)應(yīng)用配置信息和應(yīng)用的代碼執(zhí)行時(shí)間記錄該應(yīng)用的代碼的執(zhí)行過程數(shù)據(jù)。實(shí)現(xiàn)依據(jù)不同的的HTTP請求中的URL地址從Java Web應(yīng)用性能診斷裝置中讀取動(dòng)態(tài)的應(yīng)用設(shè)置,避免研發(fā)人員的介入。
      【附圖說明】
      [0040]圖1為本發(fā)明JavaWeb應(yīng)用性能診斷方法第一實(shí)施例流程圖;
      [0041]圖2為本發(fā)明Java Web應(yīng)用性能診斷方法第二實(shí)施例流程圖
      [0042]圖3為本發(fā)明Java Web應(yīng)用性能診斷裝置第一結(jié)構(gòu)示意圖;
      [0043]圖4為本發(fā)明Java Web應(yīng)用性能診斷裝置第二結(jié)構(gòu)示意圖。
      【具體實(shí)施方式】
      [0044]多個(gè)Java應(yīng)用運(yùn)行于Java Web服務(wù)器的JVM虛擬機(jī)之上,客戶端發(fā)送HTTP請求至Java Web服務(wù)器時(shí),Java Web服務(wù)器會(huì)立刻啟動(dòng)一個(gè)對應(yīng)的應(yīng)用處理該HTTP請求。本發(fā)明各實(shí)施例主要用于監(jiān)測Java Web服務(wù)器處理HTTP請求的應(yīng)用性能。
      [0045]圖1為本發(fā)明Java Web應(yīng)用性能診斷方法第一實(shí)施例流程圖,如圖1所示,本發(fā)明實(shí)施例所提供的Java Web應(yīng)用性能診斷方法由Java Web應(yīng)用性能診斷裝置執(zhí)行,Java Web應(yīng)用性能診斷裝置可采用軟件/硬件實(shí)現(xiàn),該方法包括:
      [0046]步驟S100,獲取處理HTTP請求的應(yīng)用的應(yīng)用配置信息;
      [0047]具體地,客戶端發(fā)送HTTP請求至Java Web服務(wù)器,Java Web服務(wù)器啟動(dòng)處理該HTTP請求的應(yīng)用,Java Web應(yīng)用性能診斷裝置獲取該HTTP請求。該HTTP請求中包括對應(yīng)應(yīng)用的URL地址,Java Web應(yīng)用性能診斷裝置根據(jù)URL地址獲取處理該HTTP請求的應(yīng)用的應(yīng)用配置信息,其中應(yīng)用配置信息中包括是否開啟監(jiān)控服務(wù)開關(guān)、是否開啟記錄代碼執(zhí)行過程開關(guān)、代碼執(zhí)行時(shí)間閾值。
      [0048]在另一實(shí)施例中,Java Web應(yīng)用性能診斷裝置通過SevletContext獲取應(yīng)用名稱,根據(jù)應(yīng)用名稱獲取處理HTTP請求的應(yīng)用的應(yīng)用配置信息。
      [0049]在另一實(shí)施例中,用戶可以預(yù)先設(shè)置某個(gè)應(yīng)用的應(yīng)用配置信息。例如用戶在JavaWeb應(yīng)用性能診斷裝置中指定僅檢測某個(gè)虛擬主機(jī)下的應(yīng)用;或禁用對某個(gè)應(yīng)用或URL的監(jiān)控服務(wù)。
      [0050]步驟S102,根據(jù)所述應(yīng)用配置信息對所述應(yīng)用開啟監(jiān)控服務(wù);
      [0051]判斷應(yīng)用配置
      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
      1