日记 - axis1、axis2、XFire、CXF的简单性能比较

阅读更多

 

本文是调研4款webservice架构的效率,使用简单的demo进行进简单测试。测试结果为客户端发起请求时间,与服务器访问数据库后,返回响应的时间。一下4个工程都访问了数据库

 

Xfire:目录结构如下所示,所用IDE是myeclipse

日记 - axis1、axis2、XFire、CXF的简单性能比较_第1张图片

直接部署tomcat即可

 

测试结果:


 

 

 

Axis1:工程结构如下 


日记 - axis1、axis2、XFire、CXF的简单性能比较_第2张图片

HelloWorld和GoodBye都作为对外发布的WebService,统一由server-config.wsdd配置文件控制。

测试:客户端代码如下图

日记 - axis1、axis2、XFire、CXF的简单性能比较_第3张图片
 结果为服务端接收请求时间和客户端接收服务端返回数据时间

 



 

 平均70几毫秒

 

 

 

 

Axis2:到Apache的官网去下载一个war包



 上图中有两个包,两个包的内容都是一样的。将war包解压后得到“axis2.war”。将该包放入tomcat目录下的webapps文件夹内,然后启动tomcat可以得到下图中的文件夹

 

 
日记 - axis1、axis2、XFire、CXF的简单性能比较_第4张图片


 这时WS服务已经启动。


日记 - axis1、axis2、XFire、CXF的简单性能比较_第5张图片
 

修改下图所示路径下的axis2文件,只需将其中的

true改成true,就可以支持热部署。

 


日记 - axis1、axis2、XFire、CXF的简单性能比较_第6张图片
 

 这时新建一个pojo文件夹,将编译过的class文件放入即可支持WS的及时发布。

 

日记 - axis1、axis2、XFire、CXF的简单性能比较_第7张图片
 

 如图所示,可以看到我的HelloService.class文件已经发布在页面上

 


日记 - axis1、axis2、XFire、CXF的简单性能比较_第8张图片
 


日记 - axis1、axis2、XFire、CXF的简单性能比较_第9张图片

 


  测试:客户端代码如下图


日记 - axis1、axis2、XFire、CXF的简单性能比较_第10张图片
 

 

 结果为服务端接收请求时间和客户端接收服务端返回数据时间



 

 

 结果有点浮动,数值在170-200毫秒左右

 

 

 

 

 

CXF:工程目录结构如下


日记 - axis1、axis2、XFire、CXF的简单性能比较_第11张图片
 

 CXF没有配置文件,WS的配置以注解来进行,如下图

 


日记 - axis1、axis2、XFire、CXF的简单性能比较_第12张图片
 
日记 - axis1、axis2、XFire、CXF的简单性能比较_第13张图片
 

 可使用java代码进行WS的发布


日记 - axis1、axis2、XFire、CXF的简单性能比较_第14张图片
 

 客户端代码如下

 

 


日记 - axis1、axis2、XFire、CXF的简单性能比较_第15张图片
 

 测试结果

 



 

 

 

 

 

 

 

  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第16张图片
  • 大小: 3.8 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第17张图片
  • 大小: 19.7 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第18张图片
  • 大小: 17 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第19张图片
  • 大小: 34.4 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第20张图片
  • 大小: 1.4 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第21张图片
  • 大小: 1.3 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第22张图片
  • 大小: 1.3 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第23张图片
  • 大小: 2.8 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第24张图片
  • 大小: 20.2 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第25张图片
  • 大小: 60.3 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第26张图片
  • 大小: 18.6 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第27张图片
  • 大小: 22.1 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第28张图片
  • 大小: 69.4 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第29张图片
  • 大小: 37.3 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第30张图片
  • 大小: 21.8 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第31张图片
  • 大小: 1.3 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第32张图片
  • 大小: 1.4 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第33张图片
  • 大小: 1.3 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第34张图片
  • 大小: 14.6 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第35张图片
  • 大小: 12.7 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第36张图片
  • 大小: 21.2 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第37张图片
  • 大小: 26.8 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第38张图片
  • 大小: 18.4 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第39张图片
  • 大小: 1.5 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第40张图片
  • 大小: 1.4 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第41张图片
  • 大小: 1.4 KB
  • 日记 - axis1、axis2、XFire、CXF的简单性能比较_第42张图片
  • 大小: 1.6 KB
  • 查看图片附件

你可能感兴趣的:(webservice,tomcat,java)