【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

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:121124
用户头像

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

关注

评论

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

Amazon GuardDuty 的新增功能 – Amazon EBS 卷的恶意软件检测

亚马逊云科技 (Amazon Web Services)

深度解析首个Layer3 链 Nautilus Chain,有何优势?

鳄鱼视界

看完这一篇,ShardingSphere-jdbc 实战再也不怕了

勇哥java实战分享

学会用规则引擎Drools,让你早点下班

JAVA旭阳

Java drools

热点面试题:Vue2、3 生命周期及作用?

控心つcrazy

JavaScript 生命周期 Vue 3 vue2 前端面试题

深度解析首个Layer3 链 Nautilus Chain,有何优势?

EOSdreamer111

学会用规则引擎Drools,让你早点下班

小小怪下士

Java 程序员 后端 drools

死磕Spark事件总线——聊聊Spark中事件监听是如何实现的

做梦都在改BUG

Java 大数据 spark 事件监听

从ChatGPT到AGI还有多远?| 社区征文

轻口味

ChatGPT

阿里内网开源:多位大佬联合撰写的Java多线程手册被我拿到了

做梦都在改BUG

Java 多线程

云边端协同时序数据库的挑战与解决方案

CnosDB

时序数据库 开源社区 CnosDB 云边端协同

普通大专生,从面试无人问到拿下阿里offer!说说我的艰辛历程

做梦都在改BUG

Java 面试 专科

深度解析首个Layer3 链 Nautilus Chain,有何优势?

西柚子

解决mac电脑打开应用“意外退出”的问题 (点按“重新打开”以再次打开应用程序)

Rose

意外退出 Mac软件

深度解析首个Layer3 链 Nautilus Chain,有何优势?

威廉META

为什么 Go 语言 struct 要使用 tags

AlwaysBeta

Go

OpenAI-J 如何进行测试

HoneyMoose

应该升级 JDK 到 17 了吗

HoneyMoose

字节一面:“为什么网络要分层?每一层的职责、包含哪些协议?”

做梦都在改BUG

Java 计算机网络 网络协议

全面项目管理软件:Project Office 激活版

真大的脸盆

项目管理 Mac Mac 软件 项目流程

苹果办公必备远程工具:Royal TSX使用教程

Rose

SSH Royal TSX 教程 Royal TSX 破解 Royal TSX mac下载

Okhttp 的 retrofit2 运行警告信息异常

HoneyMoose

IBM Semeru Windows 下的安装 JDK 17

HoneyMoose

Matlab常用图像处理命令108例(一)

timerring

图像处理 数字图像处理

BetterSnapTool for Mac 帮你整理窗口,提升效率

Rose

BetterSnapTool 窗口管理软件 mac软件下载

深度解析首个Layer3 链 Nautilus Chain,有何优势?

股市老人

在 Linux 上有哪些运行程序的方式?

黑客不够黑

Shell fork Linux 上启动程序 execv

燃!网易架构大牛熬夜手敲千页网络协议笔记,竟在GitHub标星数万

做梦都在改BUG

Java 计算机网络 网络协议

面试官:如何防止 Java 源码被反编译?我:有点懵

做梦都在改BUG

Java Java源码

厉害了!刷完这份 532 算法秘笈后,我成功斩获字节、快手offer

做梦都在改BUG

Java 数据结构 面试 算法

从设计角度,深入分析 Spring 循环依赖的解决思路

做梦都在改BUG

Java spring源码 循环依赖

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