代码改变世界

使用Javamelody验证struts-spring框架与springMVC框架下action的訪问效率

2017-06-04 16:06  tlnshuju  阅读(259)  评论(0编辑  收藏  举报

在前文中我提到了关于为何要使用springMVC的问题,当中一点是使用springMVC比起原先的struts+spring框架在效率上是有优势的。为了验证这个问题,我做了两个Demo来验证究竟是不是这个原因。

在展示详细的測试数据之前,先来介绍下怎样使用javamelody測试工具来測试我们的系统。

1.须要拿到javamelody.war。并将其放在Tomcat的webapps下进行公布。

2.将javamelody.jar放在被监控项目的lib文件夹下。

3.在被监视项目的web.xml文件里增加以下的代码:

<filter>   
        <filter-name>monitoring</filter-name>   
        <filter-class>net.bull.javamelody.MonitoringFilter</filter-class>   
</filter>   
<filter-mapping>   
        <filter-name>monitoring</filter-name>   
        <url-pattern>/*</url-pattern>   
</filter-mapping>   
<listener>   
        <listener-class>net.bull.javamelody.SessionListener</listener-class>   
</listener>  

4.启动Tomcat应用server并訪问javamelody应用,如http://localhost:8080/javamelody(假设公布项目在tomcatwebapps下。则一定要在tomcat的bin文件下双击start-up.bat文件进行启动加),假设出现例如以下结果明javamelody.war部署成功


5.訪问监视数据。直接输入被监视项目的路径并在后面加入/monitoring,如我的被监视的项目名称为strutsandspring。则输入的url为:http://localhost:8080/strutsandspring/monitoring

 

介绍完javamelody的配置方法后。来看详细的測试数据。

第一、  struts-spring框架下訪问action的測试结果:



第二、  springMVC框架下的測试结果:


通过对照这两站图片中的红色标记部分,我们能够看到,在相同是訪问20次的条件下,springMVC所用平均时间是3ms,而struts-spring所用平均时间是4ms。

该结果表明springMVC确实要比struts-spring框架在性能上有优势。假设我们将訪问次数大大提高,相信差距会更加的明显。