原创

ESB企业服务总线 Apache Synapse 体系结构和新功能

        Apache Synapse是一种轻量级的高性能企业服务总线(ESB)。Apache Synapse由快速和异步的中介引擎提供支持,为XML,Web服务和REST提供了卓越的支持。除了XML和SOAP之外,Apache Synapse还支持多种其他内容交换格式,例如纯文本,二进制,黑森和JSON。适用于Synapse的广泛的传输适配器使其能够通过许多应用和传输层协议进行通信。到目前为止,Apache Synapse支持HTTP/S,邮件(POP3,IMAP,SMTP),JMS,TCP,UDP,VFS,SMS,XMPP和FIX。


Apache Synapse是Apache Software License 2.0下分发的免费开源软件。目前(2017.04.27)最新版本的Synaspe是v3.0.0。此版本带来了大量新功能,错误修复,性能和稳定性改进。

Apache Synapse版本3.0.0中的新功能:

1.高性能PassThrough HTTP传输支持所有调解方案

1)超快速,低延迟的HTTP请求中介

2)同时支持大量入站(客户端 - > ESB)和出站(ESB - >服务器)连接

3)使用共享缓冲区来智能地处理内置在引擎中的消息内容和内容感知,以处理数据

4)在存在慢或故障的客户端和服务器的情况下,自动节流和降低其性能

2.HTTP传输的OCSP/CRL证书验证支持

3.响应中介者 - 中介者从中介流程中的任何地方回复客户端

4.循环中介者 - 从IN序列跳转到OUT序列的中介者

5.头部中介者改进

1)支持添加/删除传输头

6.新的xpath函数

1)url-encoded xpath函数

2)从get-property函数访问系统属性

3)base64解码功能

7.消息处理器改进

1)重新排序消息处理器

2)新的阻止客户端实现

8. 消息注入任务改进

1)支持向代理服务注入消息

2)支持向命名序列注入消息

9. 标注调解员改进

1)支持WS-Security

2)内联端点支持

3)能够使用'To'头动态设置EPR

4)NTLM支持

10. 脚本中介者改进

1)支持删除属性

11.REST API改进

1)运输级别访问限制


主要特征:

代理服务 - 促进传输,接口(WSDL/Schema/Policy),消息格式(SOAP 1.1/1.2,POX/REST,文本,二进制),QoS(WS-Addressing/WS-Security/WS-RM) MTOM/SwA)

用于快速HTTP交互的非阻塞HTTP/S传输,并支持数千个并发连接

用于文件操作和与FTP,SFTP,CIFS和WEBDAV交互的VFS传输

JMS支持二进制,纯文本,XML和SOAP有效载荷

邮件传输,广泛支持POP3,IMAP和SMTP

支持行业驱动的财务信息交换(FIX)协议

内置注册表/存储库,便于动态重新配置和关联资源(如XSLT,XSD,JS等)

内置支持使用Quartz调度程序调度任务

负载均衡(带或不带粘性会话)和故障切换路由

支持许多Web服务标准,包括WS-Addressing,WS-Security和WS-Reliable Messaging

基于策略的消息限制和缓存(特别支持集群环境)

消息分割和聚合

使用数据库连接池进行数据库查找和更新支持

针对序列,端点和代理服务的细粒度统计信息收集

JMX监控管理

可以使用Java,Spring或BSF脚本语言(Javascript,Ruby,Groovy等)轻松扩展


高级体系结构:

Apache Synapse的设计是轻量级和快速的。非阻塞HTTP传输,多线程中介引擎和流式XML信息集合结合起来,以确保Synapse可以以最小的延迟和资源使用通过服务总线调解非常大量的消息。Synapse还具有全面的日志记录功能,统计信息收集和JMX监视支持,这在生产部署中至关重要。

synapse-arch.png

Synapse使用Apache Axis2作为底层Web服务引擎。因此,它对Web服务和相关标准(如SOAP和WSDL)有出色的支持。经过测试的Axis2模块,如Apache Rampart和Apache Sandesha2,可与Synapse一起使用,无需配置开销。使用这样的外部模块,Apache Synapse支持一系列Web服务标准,包括WS-Security和WS-Reliable Messaging。Synapse还利用Axis2集群框架提供企业级集群支持。


Synapse使用简单的基于XML的配置语言进行配置。配置语言和相关功能组件的设计考虑了SOA最佳实践。将配置片段存储在外部SOA注册表中并将其按需导入到中介引擎是微不足道的。Synapse提供了大量的调解器,可用于实现最复杂的企业集成方案。如果需要,可以通过使用Java或您最喜欢的脚本语言开发定制调解器来扩展中介引擎。

关注下方微信公众号“Java精选”(w_z90110),回复关键字领取资料:如HadoopDubboCAS源码等等,免费领取资料视频和项目。 

涵盖:程序人生、搞笑视频、算法与数据结构、黑客技术与网络安全、前端开发、Java、Python、Redis缓存、Spring源码、各大主流框架、Web开发、大数据技术、Storm、Hadoop、MapReduce、Spark、elasticsearch、单点登录统一认证、分布式框架、集群、安卓开发、iOS开发、C/C++、.NET、Linux、Mysql、Oracle、NoSQL非关系型数据库、运维等。

评论

分享:

支付宝

微信