NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Apache Synapse 1.0 和 WSO2 ESB 1.0 发布

  • 2007-06-13
  • 本文字数:2025 字

    阅读完需:约 7 分钟

Apache 软件基金会发布了 Apache Synapse 1.0 ;同时, WSO2 ——Axis2 背后的公司——也发布了基于 Synapse 的商业产品,名为 WSO2 ESB 1.0

发布声明中说,

Apache Synapse 是一个简单而高效的 Web Service 中介和 SOA 框架。它可以很容易地作为服务网关或者 HTTP 代理加入到你现有的网络中。一旦你的服务请求开始交由 Apache Synapse 中转,Apache Synapse 就可以执行许多功能,包括路由、负载平衡、变换(transformation)和协议交换(protocol switching)。Apache Synapse 可以用来构建 Enterprise Service Bus(ESB)或者 Service Oriented Architecture(SOA)。

Synapse 的主要功能包括:

  • 支持 XML/HTTP、JMS、SOAP 1.1/1.2、WS-Addressing 和 MTOM 二进制附件
  • XML/HTTP (POX) 和 SOAP、JMS 和 HTTP 之间的简单协议交换
  • 内建支持基于 XPath 和 Regex 的路由,以及基于 XSLT 的变换
  • 支持高性能非阻塞的 HTTP 和 HTTPS(基于 Apache HttpCore)
  • 支持负载平衡、故障转移和流量调节
  • 支持先进的 Web Services 标准
  • WS-ReliableMessaging
  • WS-Security
  • WS-Policy
  • JMS 支持包括文本、二进制数据、XML 和 SOAP/JMS
  • 日志和协议头修改
  • 可通过脚本语言包括 JavaScript、Groovy 和 Ruby 进行扩展
  • 定制的 Java 类和 Spring Framework 构件使 Synapse 得以扩展
  • 可扩展性模型令核心 XML 配置语言可通过 JAR 插件包扩充
  • 支持超时、失败处理和恢复
  • 大量的示例,涵盖了基于内容的路由、XSLT、WS-Security 等等方面。
  • 内建以 Apache Axis2 为基础的测试 / 范例服务器,方便进行原型设计和测试
  • 从远程登录库(registry)加载脚本、元数据、配置和资源的能力
  • 可选的对路由表及其他配置信息的动态更新
  • 支持 JDK 1.4 和 1.5

跟 Axis2 不同,Synapse 不是一个编程环境。相反,它是通过 XML 配置文件(就 Synapse 而言)或者图形用户界面(就 WSO2 ESB 而言)来进行配置和管理的。在 1 月份,InfoQ 曾报道过 Synapse孵化成功的情况;从那以来,Synapse 已经升级到使用Apache Axis2 1.2,并增加了对非阻塞HTTP 和HTTPS 传输的支持。除了在范例和文档上的改进,对WSDL 端点以及高可用性的支持也都得到了增强。

InfoQ 趁 1.0 版发布的机会对 WSO2 的 CTO Paul Fremantle 进行了进一步的访问。显然,WSO2 ESB 附带商业支持和由 WSO2 提供的训练课程;另外,WSO2 ESB 还附带了一个管理用的 Web 界面和一个注册库(registry)。Paul 在一篇博客文章中说:

我们内建了一个注册库(registry)和仓库(repository),你可以通过 Web 界面来管理它们。这意味着你可以在同一个地方存储、管理和使用所有的资源——WSDL、URL、XSLT、脚本、WS-Policy、Synapse.xml 等等。我认为,这是用 Synapse(或者其他产品)来真正构建 ESB 的一个关键方面。我们在这个方面还要继续增强,敬请关注。

当被问到这次发布的工具中对注册库的支持时,Paul Fremantle 解释说,

通过 HTTP GET 接口或者文件系统,Synapse 可以使用提供 XML 或其他配置信息的注册库。作为 ESB 一部分的“注册库”本质上是一种以文件系统的方式来管理所需资源(WSDL、WS-Policy、XSLT、Synapse XML 配置文件等)的手段。

我们还向 Paul 询问了如何决定是使用 Synapse/ESB 还是 Axis2/WSAS(WSAS 是 WSO2 在 Axis2 基础上提供的商业版本):

首先 ESB 和 Synapse 都应该能够与其他运用 SOAP 或 XML 的系统(包括经由 JMS)互操作。ESB 实际上是一个管理、路由和监控系统。它不是被设计来作为实际服务的宿主,而仅仅是虚拟服务,这些虚拟服务是由在其他地方运行的实际服务实现的。因此你会使用 Axis2/WSAS 来构建实际的服务,而使用 ESB 或 Synapse 来给一组运行在其他地方的服务(可能使用 WSAS、Axis2、Axis1、.NET、Perl、PHP、JMS)创造一个总线(一组虚拟的、受控的、一致的服务)。

Paul 声称WSO2 的 ESB(包括 Synapse)的性能,要远远超越另一个他没提到名字的处于领先地位的商业 ESB 产品:

ESB 被设计成快得冒烟。我们不能说出名字(因为专有厂商通常都写进许可协议里面的那些屁话),但我们对 WSO2 ESB 和一个处于领先地位的专有 / 闭源 ESB 进行了对比测试。结果显示我们在简单路由上快 20%、基于内容的路由上快 30%、XSLT 则快 100%。我们很快会发布这些性能数据。我们有一个完整的非阻塞异步模型——甚至包括 HTTP 和 HTTPS,这意味着我们可以将规模扩展到处理数千个并发连接而没有一点性能下降。

WSO2 已经公开发布了测试结果和基准测试的配置环境。

Apache Synapse 的源码和编译版本都可以从 http://ws.apache.org/synapse 下载。

查看英文原文: Apache Synapse 1.0 and WSO2 ESB 1.0 Released - - - - - -

译者简介:郭晓刚是一名独立开发者。在经过了 10 年修练之后,总算是懂得一点编程了。目前主要关注以 SpringFramework 和 Hibernate 为主干的 Java Stack 和 Adobe Flex。Microsoft Office 的插件开发也是关心的方向之一。同时也在尽力做一些技术翻译工作,把知识分享给更多的人。参与 InfoQ 中文站内容建设,请邮件至 china-editorial@infoq.com

2007-06-13 22:121122
用户头像

发布了 225 篇内容, 共 60.9 次阅读, 收获喜欢 50 次。

关注

评论

发布
暂无评论
发现更多内容

朱嘉明:产业周期、科技周期与金融周期的失衡

CECBC

金融 科技

【得物技术】基于配置的通用化动态报表平台设计与使用

得物技术

设计 动态 报表 平台 通用化

太牛了!在字节跳动我是如何当面试官的,Android篇

欢喜学安卓

android 程序员 面试 移动开发

原创 | 使用JPA实现DDD持久化-通过Spring Data JPA访问数据

编程道与术

Java hibernate 编程 mybatis jpa

基于区块链的政务平台设计探索

华为云开发者联盟

区块链 架构 安全

第四周命题作业

cc

极客大学架构师训练营 - 同城快递业务架构设计

好吃不贵

极客大学架构师训练营

工作多年还是只会用wait和notify?30分钟用案例告诉你有更好得选择

小Q

Java 学习 编程 架构 面试

牛啤了!字节跳动Java岗面试官把内部面试题(含答案)泄露了,明年金三银四有望了

面试 算法 架构师

如何让组织文化不在虚无?

Alan

团队管理 个人提升 文化 28天写作

Eureka 架构原理及其源码分析

Fox

Spring Cloud Eureka

架构师训练营第 1 期 -week13

习习

详解C/C++协程实现原理及使用

赖猫

c++ 协程

架构2期第八周作业(1)

浮生一梦

极客大学架构师训练营 2组 第八周作业

JVM垃圾回收性能分析

积极&丧

一周信创舆情观察(12.7~12.13)

统小信uos

盘点 2020 | 感悟总结

idonkeyliu

盘点2020

架构师训练营第十三周作业

月殇

极客大学架构师训练营

架构师训练营第四周命题作业

Geek_xq

沪上首座“区块链生态谷”揭开面纱!

CECBC

大数据 生态产业

请回答2020:芯片巨头并购潮究竟意味着什么?

脑极体

算法爱好者福利—拓扑排序的简介及实现

比伯

Java 编程 架构 程序人生 算法

第四周学习心得

cc

太赞了!2021疫情期间八家大厂的Android面试经历和真题整理,值得收藏!

欢喜学安卓

android 程序员 面试 移动开发

架构师训练营 1 期 -- 第十三周作业

曾彪彪

极客大学架构师训练营

滴滴开源Super-jacoco:java代码覆盖率收集平台

滴滴技术

Java 开源 滴滴开源 Super-Jacoco

微服务架构及其技术栈

Fox

微服务 Spring Cloud spring cloud alibaba

我不喜欢挫折教育

熊斌

成长 自我思考 自我独白 个体成长

点燃“云+AI”的烽火,照亮网络安全的月之暗面

脑极体

“九章”问世,量子计算将如何影响区块链技术?

CECBC

量子计算机

90分钟10个手写案例,从源码底层给你讲解7种线程池创建方式

小Q

学习 源码 架构 面试 多线程

Apache Synapse 1.0和WSO2 ESB 1.0发布_SOA_Stefan Tilkov_InfoQ精选文章