999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

應用軟件的監控與AOP技術探析

2009-01-14 08:11:26
中國新技術新產品 2009年24期
關鍵詞:模塊化

葉 峰

摘要:傳統監控軟件在模塊化和靈活性方面存在固有的缺陷,面向方面編程(AOP)是為了解決傳統監控軟件而提出來,它能夠較為理想的解決橫切關注點的問題,使系統獲得更好的模塊化。

關鍵詞: 監控軟件;AOP;模塊化

1引言

傳統的應用軟件監控系統中,監控功能在整個系統中表現為一個模塊,但由于被監控的對象分布在系統的各個模塊中,所以用于實現監控的代碼(主要是監控代理的代碼)也就分散于需要監控的各個模塊中。當系統變化時,這種方式既難維護,也很難深入的進行修改。這造成日后要求對性能需求有更好理解的時候,添加或修改監控程序的代碼變得困難。簡單地說,系統監控是經典的橫切關注點,因此任何非模塊化的實現都會讓它混亂。針對傳統監控軟件模塊化和靈活性的不足,本文利用面向方面編程的思想提出一種更加模塊化、易擴展且易使用的軟件監控系統的原型,并進行技術探討。

2常用的應用監控

2.1常用應用監控

對Tomcat服務器的監控內容主要有:可用性、應答時間明細、內存利用率、線程明細、響應概要、應用的概要和明細、每分鐘對于Tomcat服務器的請求、每分鐘每JSP的請求及應答時間等。對WebLogic服務器的監控內容主要有:JVM堆棧使用情況、服務器應答時間、所有web應用的指標、用戶會話及相關信息、EJB(Enterprise JavaBean), EJB Pool統計量、EJB Cache統計量、Servlet, Thread pool, Java Database Connectivity (JDBC)Pool、等待連接的時間、正在使用的數據庫連接所占比例、自定義應用MBean (JMX)屬性等。

對WebSphere服務器的監控內容主要有:JVM內存使用率、服務器應答時間、CPU利用率、所有web應用的指標、用戶會話及相關信息、Enterprise JavaBeans(EJBs), Thread Pool, Java Database Connectivity (JDBC) Pool、自定義應用MBean(JMX)屬性等。

數據庫的監控。Oracle數據庫的主要監控內容:應答時間、活動用戶、狀態、表空間使用率、表空間明細、表空間狀態、SGA性能、明細、狀態、Data文件的性能、會話明細、回退段的信息等。

系統監控。系統監控的對象包括Microsoft Windows系列監控的內容類似,主要是以下四個方面:

CPU利用,監控CPU利用率。檢查CPUGnu/Linux和Sun Solaris等,是否被完全利用,或利用不足;內存利用,避免系統因內存溢出而出現問題;并在內存利用率過高(或故障性過低)時獲得通知;磁盤利用率,維持一部分空白磁盤空間,如果磁盤空間低于這一界限就會發出通知。當超出閩值時,可以運行自己的程序或腳本來清理磁盤;進程監控,監控系統中的重要進程,并在某一特定進程出現故障時獲得通知。

網絡服務監控。一般是針對網絡中某個TCP端口(如FTP-21, Telnet-23)上運行的不同服務提供可用性和性能監控,主要任務包括:可用性,提供服務的可用性;應答時間,提供服務的應答時間Web服務器監控。Apache服務器的主要監控內容:被訪問的次數、負載、正常運行的持續時間、每分鐘的請求數量、每秒傳輸的字節數量、每個請求傳輸的字節數量、活動線程數、非激活的線程數等。IIS服務器的主要監控內容:服務器的可用性、服務器的應答時間。PHP服務器的主要監控內容:服務器的可用性、服務器的應答時間。

2.2監控分類

在對軟件的監控過程中,人們感興趣的監控任務按其監控的對象可以分為如下幾類:時間相關的信息,包括系統的啟動時刻、停止時刻、請求的延時、操作的耗時、服務持續的時間等。配置情況,系統一般都有一些可配置的選項,如是否啟動某項功能等。性能數據,系統中的關鍵組件的性能一般都是監控的重點,性能一般是指時間和狀態信息的相關組合。歷史數據,統計某種服務或操作的次數,某些對象的總數等互操作信息,包括各個組件間建立的連接,連接的狀態和連接上的請求的相關信息(如請求者、被請求者、請求延時等),通過其它方式實現的服務請求的信息等。狀態數據,包括系統的負載,各個組件是否可用等信息。從系統的角度劃分監控任務。由于我們考察的監控對象都是應用軟件,所以有必要從軟件系統的角度來對這些監控對象進行分析和總結。

各種軟件的實現方法各不相同,大部分的內部結構也可能錯綜復雜,但是這些軟件一般都可以看成是一組核心服務和相關周邊服務組成的、能對外提供某種應用接口的功能實體。其監控內容可以按如下方式劃分對核心服務的監控;對周邊服務組件的監控;對核心服務與其他組件互操作請求的監控;從統計數據類別劃分監控任務。大多數監控任務在獲得原始的監控數據之后,還需要將幾個不同的對象的值或者同一個對象不同時刻的值進行統計分析,以獲取人們感興趣的信息。對于多個不同的對象,常見的統計類型有:最常出現、最少出現、每種對象出現的概率、總數等;對于同一個對象,常見的統計類型有:總數、最大值、最小值、平均值等。

從監控手段劃分監控任務。雖然監控的對象千差萬別,但監控軟件使用的監控手段并不是很多,主要有直接的和間接的兩種。直接的方法比較簡單,一般是通過系統調用直接獲取待監視系統的狀態或直接讀取其中某個變量的值。如系統的CPU負載和內存使用率的監控就是直接調用系統的相關函數得到的。間接的方法主要用于監控對象間請求和操作。例如要監控某個請求,常用的方法是攔截這個請求,對其上下文進行分析,然后再按原路徑繼續這個請求。

2AOP的技術優勢

AOP作為一種程序設計方法學,關注于提高軟件的抽象程度和模塊性,從而在很大程度上改善了軟件的可擴展性、可重用性、易理解性和易維護性。

可擴展性。AOP提供系統的擴展機制是通過擴展aspect(如繼承)或增加aspect來實現的。由于方面模塊根本不知道橫切關注點,所以很容易通過建立新的方面加入新的功能。

可重用性。可重用性是指某個應用系統中的元素被應用到其他系統的能力。AOP中的系統模塊包括系統組件和影響這些組件的系統特性,通過將實現基本功能的組件和特定于應用的系統特性分離,并把每個系統特性實現為獨立的方面模塊,使得組件的重用性得到提高,并使不能封裝為類或函數的系統特性的重用成為可能。

易理解性和易維護性。AOP用最小的禍合處理每個關注點,使得橫切關注點也是模塊化的,從而避免了傳統開發方法中由于對橫切關注點的解決而導致的代碼混亂和代碼分散,提高了程序的易理解性。而且,對一個aspect的修改可以通過編織器影響到系統相關的各個部分,大大提高了系統的易維護性。

3實現AOP的關鍵技術

編織(weaving)是實現AOP的一個重要機制,利用方面編織器將方面代碼織入到核心功能代碼中,可以構建最終系統。

3.1靜態編織和動態編織

靜態編織是指在核心功能代碼中的適當位置,比如某段代碼調用前后將方面代碼織入,從而形成混合的編碼;而動態編織可以在程序運行時,根據上下文決定調用的方面和它們的先后順序以及增加或刪除一個方面等。利用靜態編織的工具有Aspect), AspectC一等;其他一些使用反射技術或運行時代碼織入技術的體系結構都屬于動態編織,這樣的工具有AspectWerkz, Jboss, Spring AOP, AOP/ST等。

3.2不同時刻的編織

編譯時編織。編譯時編織可以在編譯前進行預處理,將兩種代碼自動混合,將方面中的代碼自動插入到功能模塊代碼的合適位置處,也可在編譯后,對編譯后的代碼進行操作。

載入時編織。載入時編織是在代碼載入時,實現代碼的編織。利用對字節碼的修改實現方面的織入,通過引入一個被稱為方面容器的間接層以及對字節碼的轉化來實現動態AOP的要求。

運行時編織。運行時編織是指在運行時根據對方法的調用執行適當的方面代碼以實現編織。運行時編織可能是所有編織方式中最為靈活的,程序在運行過程中可以為單個的對象指定是否需要編織特定的Aspect。運行時編織采用的編織技術有反射、動態代理和攔截器。

參考文獻

[1]周立萍,陳平.逆向工程發展現狀研究[J].計算機工程與設計,2004.

[2]周之英,現代軟件工程(中)[M].北京:科學出版社,2000.

[3]宋亞奇. 基于代碼混淆的軟件保護技術研究 [D]. 西安:西北大學.2005.

猜你喜歡
模塊化
模塊化自主水下機器人開發與應用
基于模塊化控制系統在一體化教學中的應用
模塊化住宅
現代裝飾(2020年5期)2020-05-30 13:01:56
馬勒推出新型模塊化混動系統
考慮模塊化和退貨率的供應鏈大規模定制模型
ACP100模塊化小型堆研發進展
中國核電(2017年2期)2017-08-11 08:00:56
從模塊化中得到的二氧化碳
流程工業(2017年4期)2017-06-21 06:29:52
模塊化VS大型工廠
流程工業(2017年4期)2017-06-21 06:29:50
非模塊化設計四合一爐對流室的模塊化吊裝
機械制造技術模塊化教學改革研究
主站蜘蛛池模板: 99热这里只有免费国产精品| 亚洲中文精品久久久久久不卡| 亚洲性网站| 免费观看欧美性一级| 成人av手机在线观看| 国产精品亚洲精品爽爽| 久久综合九色综合97婷婷| 久久公开视频| 欧美区国产区| 亚洲国产清纯| 欧美精品二区| 综合久久五月天| 无码国产伊人| 欧美怡红院视频一区二区三区| 欧美日韩一区二区三区四区在线观看| 免费精品一区二区h| 国产青榴视频| 亚洲成人免费看| 黄色在线网| 视频二区中文无码| 波多野结衣国产精品| 国产一级特黄aa级特黄裸毛片| 亚洲va欧美ⅴa国产va影院| 成人国产免费| 国产熟女一级毛片| 国产情精品嫩草影院88av| 国产精品吹潮在线观看中文| 国产在线小视频| 久久久久国产精品嫩草影院| 在线观看精品国产入口| 色老二精品视频在线观看| 激情影院内射美女| 91色综合综合热五月激情| 国产特级毛片| 91精品免费高清在线| 国产精品综合久久久 | 亚洲国产天堂久久综合226114| 九九九国产| 欧美一区二区自偷自拍视频| 伊人激情久久综合中文字幕| 成人一级黄色毛片| 亚洲精品无码在线播放网站| 国产激情无码一区二区APP| 国产丝袜无码精品| 国产性生大片免费观看性欧美| 国产爽妇精品| A级毛片无码久久精品免费| 精品国产欧美精品v| 久久久91人妻无码精品蜜桃HD| 国产91在线免费视频| 亚洲成a人片77777在线播放| 欧美日韩导航| 亚洲va精品中文字幕| 午夜毛片福利| 2020精品极品国产色在线观看 | 亚洲a级毛片| 国产产在线精品亚洲aavv| 福利在线不卡| 丝袜高跟美脚国产1区| 亚洲一区二区黄色| 欧美日韩国产在线人成app| 无码久看视频| 婷婷色狠狠干| 国产欧美日韩一区二区视频在线| 日韩天堂在线观看| 四虎永久在线精品国产免费| 国产在线一区视频| 久久夜色精品国产嚕嚕亚洲av| 久热中文字幕在线| 国产av无码日韩av无码网站| 国产人人射| 色婷婷成人网| 国产在线欧美| 国产特级毛片aaaaaa| 久久精品国产精品国产一区| 九一九色国产| 免费观看成人久久网免费观看| 精品第一国产综合精品Aⅴ| 亚洲第一黄色网址| 无码免费的亚洲视频| 国产成人精品免费av| 国产成人区在线观看视频|