应用软件监控与AOP技术探析.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
应用软件监控与AOP技术探析

应用软件监控与AOP技术探析   摘要:传统监控软件在模块化和灵活性方面存在固有的缺陷,面向方面编程(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监控分类   在对软件的监控过程中,人们感兴趣的监控任务按其监控的对象可以分为如下几类:时间相关的信息,包括系统的启动时刻、停止时刻、请求的延时、操作的耗时、服务持续的时间等。配置情况,系统一般都有一些可配置的选项,如是否启动某项功能等。性能数据,系统中的关键组件的性能一般都是监控的重点,性能一般是指时间和状态信息的相关组合。历史数据,统计某种服务或操作的次数,某些对象的总数等互操作信息,包括各个组件间建立的连接,连接的状态和连接上的请求的相关信息(如请求者、被请求者、请求延时等),通过其它方式实现的服务请求的信息等。状态数据,包括系统的负载,各个组件是否可用等信息。从系统的角度划分监控任务。由于我们考察的监控对象都是应用软件,所以有必要从软件系统的角度来对这些监控对象进行分析和总结。   各种软件的实现方法各不相同,大部分的内部结构也可能错综复杂,但是这些软件一般都可以看成是一组核心服务和相关周边服务组成的、能对外提供某种应用接口的功能实体。其监控内容可以按如下方式划分对核心服务的监控;对周边服务组件的监控;对核心服务与其他组件

文档评论(0)

151****1926 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档