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

关于axis1.4中提高传输性能的分析

 
阅读更多
http://hi.baidu.com/%B1%A9%D7%DFboy/blog/item/dbaf25dd572bd8e439012fd5.html


1. 使用http1.1。 默认情况下,axis1.4使用的transport handler是HttpSender,这个类默认使用http1.0作为它的传输标准。而http1.0是不提供persistent connection(keep-alive)模式的,这样每次call都会建立一次新的连接,尤其是对于ssl的连接来说,这个开销就有点霸道了。http11的标准提供了keep-alive机制,把axis的transport升级成http11能节约不必要的连接建立开销。具体做法有:

     (1)调用client call(org.apache.axis.client.Call)来setProperty(MessageContext.HTTP_TRANSPORT_VERSION, HTTPConstants.HEADER_PROTOCOL_11);

     (2)把transport handler改成Jakarta的CommonsHTTPSender。这个需要设置axis engine使其来使用CommonsHTTPSender,在初始化axis.client.Service之前set engine configuration(因为在初始化Service的时候axis回去加载engine configuration)。AxisProperties.setProperty(EngineConfigurationFactory.SYSTEM_PROPERTY_NAME, "com.test.CustomerEngineConfiguraiontFactory"),这样写的目的是告诉axis去使用我们自己定义的factory。 这个CustomerEngineConfiguraiontFactory实现了axis的EngineConfigurationFactory接口,在这个接口实现类里面set了engine configuration。一个简单的实现如下:

public EngineConfiguration getClientEngineConfig() {
   SimpleProvider engineProvider = new SimpleProvider ();
   engineProvider.deployTransport(HTTPTransport.DEFAULT_TRANSPORT_NAME
     , new CommonsHTTPSender());
   return engineProvider;
}

2. 压缩传输数据。 这个需要在设置了transport为http11后才能使用。用axis.client.Call去set相应的property:

call.setProperty(HTTPConstants.MC_GZIP_REQUEST, Boolean.TRUE);
   call.setProperty(HTTPConstants.MC_ACCEPT_GZIP, Boolean.TRUE);

可以参考这里,http://www.pocketsoap.com/weblog/2005/10/1565.html

--end
分享到:
评论

相关推荐

    axis1.4生成客户端

    Axis1.4是Apache软件基金会提供的一个开源工具,专门用于处理Web服务,特别是基于SOAP(Simple Object Access Protocol)的Web服务。本文将深入探讨如何使用Axis1.4生成客户端,以及与之相关的知识点。 1. **Web...

    webservice axis1.4 开发资料

    在本文中,我们将详细探讨Axis1.4在Web服务开发中的关键知识点。 1. **Axis1.4框架**:Axis1.4是Axis1.x系列的一个版本,提供了一整套工具和库,用于创建、部署和管理Web服务。它支持SOAP 1.1协议,并通过WSDL(Web...

    web service axis1.4 jar

    虽然Axis1.4相较于现代的Web服务框架(如Apache CXF、Spring-WS)可能在性能上略显逊色,但通过合理的配置和优化,依然可以在很多场景下满足性能需求。 总的来说,"web service axis1.4 jar"是一组包含所有必要库...

    axis1.4开发需要用到的jar包

    在 Axis1.4 开发 Web 服务(Web Service)时,使用正确的库文件至关重要。Axis 是 Apache 组织提供的一款开源工具,它主要用于构建和部署 SOAP(Simple Object Access Protocol)Web 服务。以下是对给定文件中每个 ...

    axis1.3 axis1.4jar包

    标题提到的"axis1.3 axis1.4jar包"指的是Axis1框架的两个不同版本——1.3和1.4的Java库文件。 Axis 1.x版本是最早的Axis版本之一,主要功能包括: 1. **Web服务生成**: Axis可以从现有的Java类自动生成WSDL文档,...

    Axis1.4开发指南PDF版本下载.txt

    根据提供的文件信息,本文将对Axis 1.4开发指南中的关键知识点进行详细的解析与总结。Axis是一款由Apache基金会维护的开源项目,主要用于构建和访问Web服务。它提供了丰富的功能来支持SOAP协议,并且能够方便地与...

    axis-1_4.zip

    1. **安装和配置**:将所需的JAR文件添加到开发环境的类路径中,或者在服务器上部署Axis1.4的WAR文件。 2. **创建服务**:使用Java类定义服务接口和实现,并使用Axis提供的工具(如wsdl2java)生成服务描述(WSDL)...

    axis-1.4.jar

    在Java开发中,使用Axis-1.4.jar可以帮助开发者快速地创建客户端和服务端的Web服务。以下是这个库包含的一些关键知识点: 1. **Web服务客户端**:Axis提供了生成Java客户端代码的能力,这些代码可以直接调用远程Web...

    axis1.3_1.4.rar

    如果需要更好的性能和对新标准的支持,如JAX-WS,那么Axis 1.4是更好的选择。 总的来说,"axis1.3_1.4.rar"这个压缩包提供了两种版本的Axis,开发者可以根据项目的具体需求选择使用,以实现Web服务的创建、部署和...

    axis_1.4 for webservice 开发

    【描述】提到的"Attached the file is Axis_1.4 for webservice development,you can upload it and use it."意味着提供的压缩包包含了Axis 1.4的完整版本,用户可以将其上传到自己的开发环境中,并开始利用这个工具...

    axis-bin-1.4.rar

    3. **Axis 1.4**:作为Axis的稳定版本,1.4带来了许多改进和修复,包括对Java 5的支持,增强了性能,以及对WSDL 1.1的更全面支持。它还包含了各种绑定和传输选项,如HTTP、HTTPS、JMS等。 4. **SOAP**:SOAP是Web...

    axis-1_4生成websevices客户端下载cmd输入就能生成

    虽然现代版本的Axis(如Axis2)和其它工具(如Apache CXF)提供了更多功能和改进,但Axis1.4仍然在一些项目中得到使用,尤其是对于维护旧代码或对性能要求不高的场景。了解和掌握这种技术有助于提升你在Web服务开发...

    axis2-1.4.jar

    Apache Axis2是基于Apache SOAP(Simple Object Access Protocol)项目的成果,其设计目标是提高性能、简化开发流程,并支持WS-*(Web Services*)标准。"axis2-1.4.jar"作为Axis2框架的核心库文件,包含了运行时...

    Web Service Axis完整的实例

    它还包括对MTOM(Message Transmission Optimization Mechanism)的支持,用于优化二进制数据传输,提高性能。 总之,"Web Service Axis1.4 完整的实例"涵盖了创建、部署和使用Web服务的全过程,是学习Web服务开发...

    axis 1.x与axis2.x开发

    AXIOM是一个高性能的XML信息模型,允许对XML数据进行低级别操作,提高了处理速度。此外,Axis2.x采用了模块化架构,使得服务和处理逻辑可以独立部署和更新,增强了灵活性和可维护性。它还支持MTOM(Message ...

    Axis 开发指南

    总之,Axis 1.4作为一款成熟的WebService框架,不仅简化了WebService的开发和部署过程,还提供了丰富的特性和工具集,极大地提高了开发效率和系统的可靠性。对于希望利用WebService进行应用集成的开发者而言,深入...

    axis-1_4.jar

    版本号的提升通常意味着修复了前一版本的错误,增加了新功能或提高了性能。对于开发人员来说,选择合适的版本很重要,因为它可能会影响与现有代码库的兼容性。 在压缩包子文件的文件名称列表中提到了"lib",这通常...

    axis 1_4 基础开发文档

    8. **性能优化**:包括缓存WSDL、批量处理请求、使用高效的序列化机制等,都是提高Axis性能的关键。 9. **错误处理**:Axis提供了丰富的异常处理机制,包括SOAPFault和AxisFault,帮助开发者处理服务调用过程中的...

    axis中文文档

    - **性能优化**:了解如何调整Axis的配置参数,如缓存大小、线程池设置等,可以提高服务的响应速度和并发能力。 4. **高级特性** - **WS-I兼容性**:Axis支持Web服务互操作性(WS-I)标准,确保服务在不同的实现...

    web service AXIS2_1.4

    在"AXIS2_1.4"中,我们能找到以下关键知识点: 1. **模块化架构**:Axis2采用了模块化的架构,将服务分解为可重用的单元,称为“服务组件”。这种设计允许开发者按需加载和卸载服务,提高了灵活性和可维护性。 2. ...

Global site tag (gtag.js) - Google Analytics