2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、教你如何用教你如何用JMXJMX檢測(cè)應(yīng)用程序檢測(cè)應(yīng)用程序提示:本文檔由本文檔由91913網(wǎng)址導(dǎo)航(網(wǎng)址導(dǎo)航()整理,供大家學(xué)習(xí)。)整理,供大家學(xué)習(xí)。如果你想用JMX檢測(cè)應(yīng)用程序,其實(shí)只需添加bean就可實(shí)現(xiàn),立即可視結(jié)合平臺(tái)內(nèi)的JMX支持和jconsoleJMX客戶機(jī)可以提供一種向應(yīng)用程序添加管理和監(jiān)視功能的輕松方式。即使是沒(méi)有具體管理需求的應(yīng)用程序,為它們構(gòu)建這些功能也會(huì)讓您對(duì)程序的運(yùn)行及其所處理的數(shù)據(jù)的性質(zhì)獲得深入了解,而且不需太多

2、的工作和努力。如果應(yīng)用程序?qū)С龉芾斫涌?,此接口讓您可以查看它操作的?nèi)容,那么您就會(huì)更加了解它的運(yùn)行狀態(tài)——對(duì)它是否按預(yù)期的方式工作也會(huì)更有信心——而不必求助于額外的工具(例如添加日志代碼或使用調(diào)試器或分析器)。調(diào)試器和分析器可以提供對(duì)應(yīng)用程序的行為的深入觀察,但在出現(xiàn)嚴(yán)重問(wèn)題之前,這些工具通常用不上。將監(jiān)視掛鉤(hook)構(gòu)建到應(yīng)用程序內(nèi),會(huì)使理解程序的執(zhí)行變得更容易而且不會(huì)破壞調(diào)試器。既然Java管理擴(kuò)展(JMX)已經(jīng)構(gòu)建進(jìn)了Java

3、?SE平臺(tái),而且jconsole查看器提供了統(tǒng)一的監(jiān)視GUI,那么用JMX為應(yīng)用程序提供一個(gè)窗口,要比以前更加容易而且更為有效。有多少次您曾經(jīng)注視著運(yùn)行中的應(yīng)用程序,問(wèn)自己:“它到底在做什么?為什么用了這么長(zhǎng)時(shí)間呢?”在這些時(shí)刻,您可能會(huì)想如果自己在應(yīng)用程序中構(gòu)建了更多的監(jiān)視功能就好了。例如,在服務(wù)器應(yīng)用程序中,能夠查看排隊(duì)等候處理的任務(wù)的數(shù)量和類型、當(dāng)前正在處理的任務(wù)、過(guò)去一分鐘或一小時(shí)內(nèi)的吞吐量統(tǒng)計(jì)、平均任務(wù)處理時(shí)間等。這些統(tǒng)計(jì)值容

4、易搜集,但是在需要數(shù)據(jù)的時(shí)候,如果沒(méi)有非侵入性的數(shù)據(jù)檢索機(jī)制,那么這些值就不太有用??梢杂迷S多方式導(dǎo)出操作性數(shù)據(jù)——可以把周期性統(tǒng)計(jì)快照寫入日志文件、創(chuàng)建SwingGUI、使用內(nèi)嵌的HTTP服務(wù)器在Web頁(yè)面上顯示統(tǒng)計(jì)值或者發(fā)布可以用來(lái)查詢應(yīng)用程序的Web服務(wù)。但是在缺少監(jiān)視和數(shù)據(jù)發(fā)布基礎(chǔ)設(shè)施的情況下,多數(shù)應(yīng)用程序開(kāi)發(fā)人員都做不到這些,因此造成對(duì)應(yīng)用程序工作情況的了解要比預(yù)期的少很多。JMX:在Java5.0中,類庫(kù)和和JVM提供了一種

5、全面的管理和監(jiān)視基礎(chǔ)設(shè)施——JMX。JMX是一種用來(lái)提供可以遠(yuǎn)程訪問(wèn)的管理接口的標(biāo)準(zhǔn)措施,也是一種向應(yīng)用程序添加靈活且強(qiáng)大的管理接口的簡(jiǎn)易方式。被稱作受管bean(MBean)的JMX組件,是提供與實(shí)體的管理有關(guān)的訪問(wèn)器和業(yè)務(wù)方法的JavaBean。每個(gè)受管的實(shí)體(可能是整個(gè)應(yīng)用程序或應(yīng)用程序中的服務(wù))實(shí)例化一個(gè)MBean并用可讀懂的名稱注冊(cè)它。支持JMX的應(yīng)用程序依賴于MBeanServer,它充當(dāng)MBean的容器,提供遠(yuǎn)程訪問(wèn)、命名

6、空間管理和安全服務(wù)。在客戶端,jconsole工具可以充當(dāng)統(tǒng)一的JMX客戶機(jī)。結(jié)合兩者,對(duì)JMX的平臺(tái)支持極大地降低了使應(yīng)用程序支持外部管理接口所需的工作和努力。除了提供MBeanServer實(shí)現(xiàn),JavaSE5.0還提供JVM以更方便地了解內(nèi)存管理、類裝入、活動(dòng)線程、日志和平臺(tái)配置的狀態(tài)。多數(shù)平臺(tái)服務(wù)的監(jiān)視和管理在默認(rèn)情況下都是開(kāi)啟的(性能影響最?。?,所以只需要連接應(yīng)用程序與JMX客戶機(jī)即可。圖1給出了jconsoleJMX客戶機(jī)(J

7、DK的一部分),它顯示了其中一個(gè)內(nèi)存管理視圖——一段時(shí)間內(nèi)的堆使用情況。PerfmGC按鈕則證明了JMX可以提供除了查看操作統(tǒng)計(jì)值之外的初始化操作的功能。publicclassWebServerimplementsWebServerMBean......WebServerws=newWebServer(...)MBeanServerserver=ManagementFacty.getPlatfmMBeanServer()server.r

8、egisterMBean(wsnewObjectName(“myapp:type=webservername=Pt8080“))傳遞給registerMBean()的ObjectName標(biāo)識(shí)了受管實(shí)體。因?yàn)轭A(yù)見(jiàn)到指定應(yīng)用程序可能包含許多受管實(shí)體,所以名稱包含域(清單2中的“myapp”)和許多標(biāo)識(shí)域中的受管資源的鍵值對(duì)?!皀ame”和“type”這兩個(gè)鍵是常用的,在使用的時(shí)候,name應(yīng)當(dāng)在域中所有的同類MBean中能夠唯一地標(biāo)識(shí)受管實(shí)

9、體。也可以指定其他鍵值對(duì),而且JMXAPI還包含進(jìn)行對(duì)象名稱通配匹配的工具。創(chuàng)建并注冊(cè)了MBean之后,立即就可以把jconsole指向應(yīng)用程序(在命令行輸入jconsole)并在“MBeans”視圖中查看它的管理屬性和操作。圖2顯示了jconsole中針對(duì)新MBean的Attributes標(biāo)簽,圖3顯示了Operations標(biāo)簽。使用反射,JMX可以指出哪個(gè)屬性是只讀的(Started、Pt),哪個(gè)屬性是可讀寫的(LogLevel),

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論