基于AOP的J2EE性能测试框架的设计和实现

来源 :中国地质大学(武汉) | 被引量 : 0次 | 上传用户:judy17318
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着互联网的蓬勃兴起,企业应用从传统的客户机/服务器模式开始面向互联网,面向分布式应用。作为企业级应用程序解决方案之一,J2EE被认为是当今可用于企业软件开发的最佳平台。然而,这一承诺并未完全实现。由于J2EE和企业业务的复杂性和分布性,经常可以看到编写完成的企业应用程序设计复杂,结构臃肿庞大,运行起来耗费大量系统资源且系统响应缓慢。为了寻找系统中存在的性能瓶颈和冗余代码,人们通过各种性能测试工具对系统进行各种压力测试和回归测试。然而这些测试工具和测试本身往往只能从系统的外围来对瓶颈进行检测和识别,为了找出有问题的代码,程序员常常只能手动向应用程序中添加代码来判断系统的瓶颈点,然而由于J2EE系统常见的庞大性和复杂性,这种做法无异于杯水车薪。问题不在于缺少基于J2EE平台的性能测试工具,类似于JMeter、JProbe这样的工具可以从外部模拟用户调用,统计系统的响应和资源的占用。问题出现在如何具体定位有性能问题的程序代码。传统的面向对象开发方法很难有效的解决这一问题,人们往往只能以手动和原始的方法来猜测、判断系统的性能问题所在。这是由于系统监视是经典的横切关注点问题,因此任何非模块化的实现都会让它混乱。 本文的目标就是通过设计和实现一个基于AOP技术的性能测试框架——SimpieProfiler,来解决这个脱节问题。作为近年来新兴的技术,面向方面是当前程序设计技术发展的一个新方向,目的就是为了解决传统的面向对象无法解决的横切关注点问题。运用AOP技术,可以将系统监视这一功能从具体的企业应用程序中抽取出来予以模块化,进而使得系统监视代码同业务代码的分离,乃至成为单独的应用软件从而增加了代码的清晰度,可适应性、可重用性。 本文共分六个部分。第一部分详细阐述了论文选题的目的和意义以及研究的主要内容。第二部分主要介绍面向方面编程技术。第三部分结合实际开发中的性能问题,提出了性能测试框架的设计功能和总体设计。第四部分是本文的重点,具体且详细的论述了SimpleProfiler测试框架的实现和关键技术问题的解决。第五部分主要通过将SimpleProfiler与当前业界的同类型软件进行横向比较来论述SimpleProfiler的优势和缺点。最后第六部分是整个全文的总结,论述了测试框架的系统特点和有待提高之处。 目前,传统的测试工具往往是基于系统外部调用和性能统计分析,它们适用进行压力负载测试或是回归测试。然而一旦发现性能问题,对如何精确定位系统的瓶颈点并无太大帮助。商业的性能采样工具又由于价格昂贵,可定制性低,测试时占用大量资源等问题,使得开发人员往往都是采用手工编写测试代码。SimpleProfiler作为不依赖于具体应用的性能监视器,在功能上具有很强的独特性和实用性。与传统的性能测试和性能采样工具相比,SimpleProfiler有以下特点: 运用AOP技术完成系统调用监测,相较原来的JVMTI/JVMPI方式更加灵活,软件更加轻便,程序也更容易部署。 通过AOP将性能测试功能从具体的应用抽取出来成为独立的AOP软件,目前此种软件还不多,具有较新的独特性。 AspectJ在pointcut的可配置性和独立性相较JBOSS AOP和AspectWerkz等AOP实现还有较大不足,利用Annotation和ASM字节码编织工具,成功的弥补了这一不足。软件具有较强的可定制性。 除了软件的实用性和功能,SimpleProfiler的开发本身即是对AOP应用程序开发技术的一次有益的探索和尝试。
其他文献
随着网络技术的发展,电于商务应用日趋广泛,具备个性化、智能化和标准化的双边多边协商是当前研究的热点。本课题在继承了前人对协商理沦与协商模型的研究基础上,针对电子商务系
Cluster systems are common platforms for both high performance computing and cloud computing.As the scales of cluster systems increase,failures become normal.It
本文简要阐述了建立地学平台的必要性,介绍了MVC模式和Struts框架的工作原理,然后结合地学数据共享与发布平台设计实现的具体实例,讲述了Struts实现MVC模式的Web应用过程中的关
近几年Internet和Web技术的飞速发展使得网络与人们生活工作的关系越来越密切,如何才能方便、快捷地开发出具有高效性、灵活性和易扩展性的Web应用系统也就越来越成为一个备
本文所提出的思路,在信息系统的设计阶段,就充分考虑数据库的安全问题。把数据库安全体系的建设作为数据库设计过程中考虑的重点问题。从而防止那些因跳过数据库管理系统的外层
本文对基于嵌入式GIS技术的通信线路巡检系统进行了研究与开发。其中包括电子地图显示、操作、属性查询;巡检数据存储的组织形式、存储方式;巡检数据的分析、处理;巡检路线的实
科学计算可视化是当前计算机学科的一个重要研究方向,它的出现有效地解决了目前海量科学数据高效处理和解释这一难题。现代科学提供数据的手段多种多样,且所获得的信息也无法用
本设计把数据可视化技术应用于位场及地质数据的建模领域,针对地球物理、地质、气象以及分子物理领域产生的大量三维数据,在现有三维可视化技术韵基础上进一步研究更加逼真、
本文首先提出了现代意义的办公自动化的概念,阐述了办公自动化的现状和发展趋势以及所涉及的新技术。接着分析不同行业、单位特别是中小型企业的办公自动化系统的差异和存在的
如今的互联网涉及生活工作,给人们方方面面都带来极大的方便。之前,数据信息往往都是孤立,无法进行分享与利用。随着数据价值意识逐渐深入企业,不少企业将过往内部的信息资源进行