`
ganqing1234
  • 浏览: 171775 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

CXF几种客户端调用性能

 
阅读更多

 

转自:http://blog.csdn.net/liaomin416100569/article/details/5503410

 

public static void invokeMethod1() {
  long s=new Date().getTime();
  UserServiceImplService serivce = new UserServiceImplService();
  UserServiceImpl impl = serivce.getUserServiceImplPort();
  User u = new User();
  impl.addUser(u);
  long s1=new Date().getTime();
  System.out.println(s1-s);
  //第一次去调用1297
  //1437 1062 1063 1078 1047
 }

 public static void invokeMethod2() {
  long s=new Date().getTime();
  JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
  factory.setAddress("http://localhost:8088/abc");
   QName SERVICE = new QName("http://liaomin", "UserServiceImplService");
   factory.setServiceName(SERVICE);
  factory.setServiceClass(UserService.class);
  UserService us = (UserService) factory.create();
  User u = new User();
  // us.addUser(u);
  us.addUser(u);
  long s1=new Date().getTime();
  System.out.println(s1-s);
  //第一次去调用1265
  //1047 1047(比较稳定)
 }

 public static void invokeMethod3() throws MalformedURLException {
  long s=new Date().getTime();
     QName SERVICE = new QName("http://liaomin", "UserServiceImplService");
     QName UserServiceImplPort = new QName("http://liaomin", "UserServiceImplPort");
  URL url = new URL("http://localhost:8088/abc?wsdl");
  ServiceDelegate dele=Provider.provider().createServiceDelegate(url,SERVICE,Service.class);
  UserService us = (UserService) dele.getPort(UserServiceImplPort,UserService.class);
  User u = new User();
  us.addUser(u);
  long s1=new Date().getTime();
  System.out.println(s1-s);
  //第一次去调用 1281 
  //1047 1031 1047 1016 1032
 }
 public static void invokeMethod4()
 {
  long s=new Date().getTime();
  ClientProxyFactoryBean factory = new ClientProxyFactoryBean();
        factory.setServiceClass(UserService.class);
        factory.setAddress("http://localhost:8088/abc");
       // factory.getServiceFactory().setDataBinding(new AegisDatabinding());
        UserService client = (UserService) factory.create();
        User u = new User();
        client.addUser(u);
        long s1=new Date().getTime();
  System.out.println(s1-s);
  //第一次去调用 1188 
  //调用一次后   1016 1000 1016 1015
 }

 

通过实践去测试 只有第四种调用耗费的时间最少的

如果在频繁取数据的系统中 能优化100ms的速度 对性能就会有大大的提高

比如我调用 100次webservice发送消息  每发送一次 是 1200ms(1.2s) 总共耗时 120s

如果采用第四种 只需要 1000ms(1s) 总共耗时 100s  那么优化了20s时间 20s是个什么概念

假如是调用 1000 10000次发送了  优化的效率就更大

分享到:
评论

相关推荐

    Java webservice cxf客户端调用demo和服务端

    Java WebService CXF客户端调用和服务端的实现是企业级应用程序中常见的通信方式,它基于标准的SOAP(Simple Object Access Protocol)协议,提供了一种在分布式环境中交换信息的方法。CXF是一个开源框架,它简化了...

    cxf_axis_xfire客户端调用的几种方法[收集].pdf

    总结来说,CXF客户端调用Web服务涉及以下几个关键点: 1. 定义服务接口,包含服务方法。 2. 创建XML与Java类型适配器,处理不直接支持的数据类型,如Map。 3. 在接口方法上使用`@XmlJavaTypeAdapter`注解,指定...

    cxf_axis_xfire客户端调用的几种方法.docx

    本文将详细介绍使用CXF作为客户端调用Web服务的几种方法,并结合示例解释相关知识点。 1. **CXF客户端调用** CXF是一个开源的Java框架,它支持多种Web服务标准,包括JAX-WS和JAX-RS。对于客户端调用,CXF提供了一...

    cxf客户端所需jar包-4个

    标题 "cxf客户端所需jar包-4个" 暗示了这四个JAR文件是Apache CXF框架中用于构建客户端应用程序的基本组件,使得开发者能够方便地调用Web服务。Apache CXF是一个开源的Java框架,它允许创建和消费Web服务,支持多种...

    wsdl生成服务的客户端调用代码

    当开发人员想要调用一个基于WSDL的服务时,他们通常需要生成客户端调用代码,以便在他们的应用程序中与该服务进行交互。以下是对"wsdl生成服务的客户端调用代码"这一主题的详细阐述。 首先,理解WSDL文件结构是至关...

    webservice四种发布方式及客户端调用

    本文将详细介绍四种常见的 WebService 发布方式及其客户端调用方法,包括 CXF、XFire、AXIS1 和 AXIS2,并结合实际案例进行分析。 #### 二、CXF 方式 **1. 概述** - CXF 是 Apache 的一款开源框架,它提供了强大...

    cxf-spring 服务端and客户端

    5. **客户端调用**:"cxfClient"可能包含客户端代码,使用CXF的客户端API生成服务代理,从而调用服务端提供的功能。 6. **文档重要性**:"说明.doc"是理解项目结构和运行的关键,它可能包含了环境配置、部署步骤、...

    WebService调用的几种方式

    本文将深入探讨在Java环境中调用WebService的五种主要方式:Axis、CXF、HttpClient、MyEclipse反向生成以及XFire。 1. Axis:Apache Axis是最早且广泛使用的SOAP库,用于创建和消费Web服务。使用Axis调用WebService...

    cxf最少jar包,包含服务器端和客户端

    压缩包内的文件"cxzf3.1.1开发客户端"包含了CXF 3.1.1版本的客户端所需jar包,这些jar包主要用于创建和调用远程服务,支持SOAP请求和响应,以及处理WSDL(Web Service Description Language)文档。开发者可以使用...

    java客户端调用C++ GSoap生成的webservice

    Java客户端调用C++ GSoap生成的Web服务是一种跨语言的互操作性实践,它涉及到Java和C++两种编程语言的交互,以及GSoap库在其中的作用。GSoap是开源的C/C++库,用于构建SOAP(简单对象访问协议)服务和客户端,允许...

    CXF实现webService

    4. 部署服务:使用CXF的Servlet或JAX-WS注解将服务发布到服务器上,供客户端调用。 三、CXF客户端实现 1. 从WSDL生成客户端代码:CXF提供了工具,可以将WSDL文件转换为Java客户端代码,包括服务代理和服务接口。 ...

    采用(rest ,hession,cxf)几种技术实现webservice

    在本文中,我们将探讨三种常用的技术:REST、Hessian和CXF,它们都可以用来实现Web服务,尤其是当我们使用Maven作为构建工具时。 首先,REST(Representational State Transfer,表述性状态转移)是一种基于HTTP...

    CXF soap例子源码

    5. **客户端调用**:`CXFWebServiceTest`可能会包含客户端代码,使用CXF的`JAXWSProxyFactoryBean`或者`ClientProxyFactoryBean`来创建服务代理,从而调用SOAP服务。 6. **异常处理**:源码中可能包括对SOAP服务...

    WebService客户端

    在开发WebService客户端时,有几种常见的实现方式: 1. **SOAP(简单对象访问协议)客户端**:SOAP是WebService最原始的数据交换格式,它基于XML,提供了一种标准的请求-响应模型。开发者可以使用SOAP库,如Java的...

    几种调用WebService的方法

    ### 几种调用WebService的方法 #### WebService简介与调用方法概述 WebService是一种通过标准的Web协议(如HTTP)来提供服务的应用程序接口(API),它允许在不同平台、不同语言开发的应用程序之间进行通信。...

    WS-cxf.zip

    1. **源代码**:分为客户端和服务端的源代码,可能有Java文件或者Maven/Gradle构建文件,展示了如何定义服务接口、实现服务逻辑、以及如何创建CXF客户端来调用这些服务。 2. **配置文件**:如`cxf.xml`或`web.xml`...

    apache-cxf生成wsdl

    如果是在客户端,你可以使用CXF生成的客户端代理类来调用远程服务。 5. **部署和测试**:完成服务实现后,你可以使用CXF的Servlet或其他方式将服务部署到应用服务器上。然后,你可以使用CXF的测试客户端或者自定义...

    spring 3.0.5 集成cxf

    在IT行业中,Spring框架是Java企业级应用开发的首选,而CXF则是一个流行的开源服务框架,用于构建和消费...通过实践这些知识点,开发者能够更好地理解如何在实际项目中利用这两种强大的工具,提升开发效率和应用性能。

    webservice使用cxf的实例

    总的来说,"webservice使用cxf的实例"这个主题涵盖了从基础理论到实际操作的各个环节,包括CXF框架的使用、Web服务的创建与部署、客户端调用、数据绑定、安全性和Spring集成等多个方面。通过学习和实践,开发者可以...

    cxf+spring实现webservice

    5. **客户端调用**:在需要消费Web服务的项目中,可以使用Spring的`JAXWSProxyFactoryBean`创建一个代理对象,通过这个代理对象调用远程服务。 6. **异常处理**:CXF和Spring结合时,可以利用Spring的AOP功能进行...

Global site tag (gtag.js) - Google Analytics