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人体免费视频| 高清码无在线看| 91精品国产91久无码网站| 国产精品流白浆在线观看| 72种姿势欧美久久久久大黄蕉| 91欧洲国产日韩在线人成| 亚洲成人网在线播放| 片在线无码观看| 日韩欧美91| 91在线视频福利| 国产亚洲精品无码专| 国产精品人莉莉成在线播放| 鲁鲁鲁爽爽爽在线视频观看 | 亚洲一区二区三区中文字幕5566| 一级毛片网| 国产农村妇女精品一二区| 毛片免费观看视频| 成人在线观看一区| 国产精品女人呻吟在线观看| 先锋资源久久| 欧美日韩综合网| 亚洲欧美极品| 99这里只有精品在线| 日韩在线成年视频人网站观看| 99九九成人免费视频精品| 国产男女免费完整版视频| 日韩午夜福利在线观看| 亚洲侵犯无码网址在线观看| 丰满人妻一区二区三区视频| 五月天在线网站| 国模沟沟一区二区三区| 国产区精品高清在线观看| 亚洲成人在线网| 婷婷综合缴情亚洲五月伊| 亚洲精品福利网站| 日日摸夜夜爽无码| 视频二区亚洲精品| 91精品啪在线观看国产| 国产精品吹潮在线观看中文| 无码粉嫩虎白一线天在线观看| 一级看片免费视频| 欧美日韩北条麻妃一区二区| 久久国产V一级毛多内射| 国产人妖视频一区在线观看| 亚洲欧美日韩中文字幕在线一区| 亚洲女同一区二区| 伊人网址在线| 日韩国产亚洲一区二区在线观看| AV片亚洲国产男人的天堂| 国产精品漂亮美女在线观看| 国产成人久久综合777777麻豆 | 亚洲毛片一级带毛片基地| 国产在线91在线电影| 国产精品亚洲一区二区三区z| 拍国产真实乱人偷精品| 午夜国产大片免费观看| 天天做天天爱天天爽综合区| 永久免费精品视频| 丁香婷婷综合激情| 91免费片| 伦伦影院精品一区| 99九九成人免费视频精品| аv天堂最新中文在线| 91精品国产91久无码网站| 国产亚洲精久久久久久久91| 91视频国产高清| 免费毛片全部不收费的| 欧美日韩中文字幕二区三区| 国产欧美日韩另类精彩视频| 亚洲天堂视频在线免费观看| 成年免费在线观看| 东京热av无码电影一区二区| 亚洲日本中文字幕乱码中文| 国产精品三级专区| 高潮毛片免费观看| 高清亚洲欧美在线看| 又污又黄又无遮挡网站| 欧美日韩中文国产va另类| 91亚洲精选| 国产精品美女在线| 免费激情网站| 91丨九色丨首页在线播放|