ESB Evaluation (Service LifeCyle) | ||||
Mule | ServiceMix | Tuscany-sca | ||
Item# | EVALUATION CRITERIA/CHARACTERISTICS | |||
1.1 | * 遵循的标准。 | * EIP | * JBI(SUN、INOA、RedHat) | NOT ESB,but... * SCA(IBM、BEA、Oralce、SAP) * SDO * DAS |
1.2 | * 总线服务模型:服务要素的描述。 | * Mule Service * UMO、EndPoint、Router、Trasnsformer、Interceptors | * NMR(normalized message router) * SE(service Engine) * BC(Binding Components) | * Componet、Composite、Domain * Service、Reference |
1.3 | * 服务开发 * 1、提供服务开发工具。 * 2、提供服务开发框架。 | * 可集成现有的服务,包括POJO等 * 可以基于Spring框架。 * 简单的Eclipse plugin ide | * 可以基于Spring框架。 | * Tuscany Eclipse plugin ide |
1.4 | * 服务部署 * 1、服务的热部署。 * 2、总线的分部署部署。 | * 目前不支持服务的热部署,进一步引入OSGI来支持。 * 部署方式:支持Client/Server、Enterprise Service Network、ESB、Peer to Peer、Remote deployment and management。 | * 支持JBI组件的热部署 | * 目前不支持服务的热部署,可结合OSGI实现。 * 支持分布式部署。 |
1.5 | * 服务管理 * 1、服务注册发现。 * 2、服务状态管理。 * 3、服务路由管理。 * 4、服务配置管理。 * 5、服务安全管理。 | * Mule手工修改配置文件,进行服务注册 * Mule没有服务状态的管理 * Mule直接在配置文件中写路由配置信息 支持服务Mediation * Mule的安全控制也是通过配置来实现 | * Business Activity Monitoring * Ontologies * Dynamic Discovery * Grid computing | * 在配置文件加入相应的服务组件 * 没有状态管理 * 通过提供的API进行服务查找和调用 * SCA Policy Framework配置 |
1.6 | * 服务监控 * 1、服务动态运行情况。 * 2、服务日志及警告信息。 * 3、服务器运行状态。 | * Mule可以通过JMX查看部分监控信息 | * Mule可以通过JMX查看部分监控信息 | * |
1.7 | * 服务调度 * 1、可靠消息中间件支持。 * 2、支持多模式服务调度。 | * Mule默认的消息中间件是ActiveMQ。 * 支持多种调用模式:同步、异步等。 | * 可支持多种消息中间件。 * 支持多种调用模式:同步、异步等 | * 默认支持ActiveMQ,可支持多种消息中间件。 * 支持多种调用方式:同步、异步(单向、延迟响应、回调callback)等。 |
1.8 | * 服务元数据管理 * 1、服务元数据管理。 * 2、服务版本管理。 | * 没有 | * 没有 | * 数据对象模型SDO |
1.9 | * 其他 * 1、流程服务BPEL支持。 * 2、数据服务DS支持。 * 3、JSR -223 (Scripting) * 4、其他基础服务。 | * 支持BPEL的集成,系统包含默认的BPEL Engine。 * 支持Scripting。 * 支持一些基础的格式转换。 | * 支持BPEL的集成,系统包含默认的BPEL Engine PXE。 * 规则路由,通过Drool。 * 支持一些基础的格式转换。 | * 支持BPEL的集成 * 数据服务由SDO实现 |
ESB Evaluation (Tech View) | ||||
Mule | ServiceMix | Tuscany-sca | ||
Item# | EVALUATION CRITERIA/CHARACTERISTICS | |||
2.1 | * 系统平台支持。 * 1、OS支持。 * 2、应用服务器支持。 * 3、JDK支持。 | * Linux、Windows、Mac * Tomcat、Jboss、Jetty、Oracle、Web Sphere、WebLogic等 * JDK1.4、1.5、1.6 | * Linux、Windows * Apache Tomcat、Geronimo * Run 1.4 or higher;build 1.5 or higher; | * Linux、Windows、Mac * Apache Tomcat、Jetty、Geronimo、Weblogic * Run1.5 or higher; |
2.2 | * 通信协议。 * 1、Binding。 | * Jms (1.0.2b 和 1.1)、vm (嵌入)、jdbc、tcp、udp、multicast、 http、servlet、smtp、pop3、file、xmpp等 | * file、pop3、jms、ftp、http、xmpp、rss等 | * RMI, Web Services, JSONRPC, Feed, EJB, CORBA、http、JMS、EJB等 |
2.3 | * 消息传输。 * 1、End to end event support。 * 2、Transport。 | * Routing、Transport、Transformation * synchronous、asynchronous、request response。 | * Routing、Transport、Transformation * synchronous、asynchronous、request response。 | * Tuscany Eclipse plugin ide |
2.4 | * Integration/Framework * 1、EJB。 * 2、JBI。 * 3、JCA。 * 4、JNDI。 * 5、JTA。 * 6、Spring。 * 7、Struts。 * 8、OSGI。 | * 支持全部上述Framework | * 支持2、3以及6、7、8Framework | * 支持1、6、8 |
2.5 | * Web Services * 1、Axis。 * 2、WebMethods Glue。 * 3、Xfire。 | * 支持1、2、3 | 支持1、3 | 支持1 |
2.6 | * Security * 1、ACEGI。 * 2、JAAS。 * 3、PGP。 | * 支持1、2、3 | * Authentication and authorization via JAAS * Securing the transport of messages, e.g. via SSL or WS-Security | * Securing the transport of messages, e.g. via SSL or WS-Security |
2.7 | * Other | * Mule 是一个基于ESB架构理念的消息平台。 * Mule支持多种消息调度模式:同步、异步等。 | * 通过Drools规则引擎的提供基于规则的路由 o 提供客户端API与JBI组件和服务交互 * Web服务通知(Web Services Notification)协议的实现 * 通过PXE(preboot execution environment, 预启动执行环境)提供对于Web服务BPEL(Business Process Execution Language,业务流程执行语言)的BPEL的支持 * 使用Map缓存或者JCache,支持服务调用缓存 * 支持Java连接架构 * 通过Quartz库集成Timer任务 * 脚本语言支持。任何兼容于JSR-223规范的脚本语言可以用来创建组建,执行信息转换,或者作为表达式语言使用。 * 支持XSLT扩展样式语言转换 * 通过JAXP 1.3 和XML Schema或者RelaxNG提供XML Schema验证支持。 * 通过Oracle的XSQL库支持SQL及XML的XSQL | * SCA组件模型是易于扩展,与语言无关的,实现可以是:Java, C++, BPEL, PHP, Spring等;多种数据绑定:包括XML, JavaBeans, JAXB, SDO, XMLBeans, JSON, AXIOM等。 |
ESB Evaluation (Tech View) | ||||
Mule | ServiceMix | Tuscany-sca | ||
Item# | EVALUATION CRITERIA/CHARACTERISTICS | |||
2.1 | * 系统平台支持。 * 1、OS支持。 * 2、应用服务器支持。 * 3、JDK支持。 | * Linux、Windows、Mac * Tomcat、Jboss、Jetty、Oracle、Web Sphere、WebLogic等 * JDK1.4、1.5、1.6 | * Linux、Windows * Apache Tomcat、Geronimo * Run 1.4 or higher;build 1.5 or higher; | * Linux、Windows、Mac * Apache Tomcat、Jetty、Geronimo、Weblogic * Run1.5 or higher; |
2.2 | * 通信协议。 * 1、Binding。 | * Jms (1.0.2b 和 1.1)、vm (嵌入)、jdbc、tcp、udp、multicast、 http、servlet、smtp、pop3、file、xmpp等 | * file、pop3、jms、ftp、http、xmpp、rss等 | * RMI, Web Services, JSONRPC, Feed, EJB, CORBA、http、JMS、EJB等 |
2.3 | * 消息传输。 * 1、End to end event support。 * 2、Transport。 | * Routing、Transport、Transformation * synchronous、asynchronous、request response。 | * Routing、Transport、Transformation * synchronous、asynchronous、request response。 | * Tuscany Eclipse plugin ide |
2.4 | * Integration/Framework * 1、EJB。 * 2、JBI。 * 3、JCA。 * 4、JNDI。 * 5、JTA。 * 6、Spring。 * 7、Struts。 * 8、OSGI。 | * 支持全部上述Framework | * 支持2、3以及6、7、8Framework | * 支持1、6、8 |
2.5 | * Web Services * 1、Axis。 * 2、WebMethods Glue。 * 3、Xfire。 | * 支持1、2、3 | 支持1、3 | 支持1 |
2.6 | * Security * 1、ACEGI。 * 2、JAAS。 * 3、PGP。 | * 支持1、2、3 | * Authentication and authorization via JAAS * Securing the transport of messages, e.g. via SSL or WS-Security | * Securing the transport of messages, e.g. via SSL or WS-Security |
2.7 | * Other | * Mule 是一个基于ESB架构理念的消息平台。 * Mule支持多种消息调度模式:同步、异步等。 | * 通过Drools规则引擎的提供基于规则的路由 o 提供客户端API与JBI组件和服务交互 * Web服务通知(Web Services Notification)协议的实现 * 通过PXE(preboot execution environment, 预启动执行环境)提供对于Web服务BPEL(Business Process Execution Language,业务流程执行语言)的BPEL的支持 * 使用Map缓存或者JCache,支持服务调用缓存 * 支持Java连接架构 * 通过Quartz库集成Timer任务 * 脚本语言支持。任何兼容于JSR-223规范的脚本语言可以用来创建组建,执行信息转换,或者作为表达式语言使用。 * 支持XSLT扩展样式语言转换 * 通过JAXP 1.3 和XML Schema或者RelaxNG提供XML Schema验证支持。 * 通过Oracle的XSQL库支持SQL及XML的XSQL | * SCA组件模型是易于扩展,与语言无关的,实现可以是:Java, C++, BPEL, PHP, Spring等;多种数据绑定:包括XML, JavaBeans, JAXB, SDO, XMLBeans, JSON, AXIOM等。 |
ESB Production | ||
Level | Enterprise SOA Products | |
Integration/Object Broker ESB | Service Component Architecture ESB | |
4.1 | * Fiorano ESB * Progress (Sonic ESB) * Tibco Active Enterprise * Iona Artix ESB * Mule* | * BEA AquaLogic Suite * IBM Web Sphere ESB * Oracle Application Server ESB * Tuscany SCA* |
SOA Lite Products | ||
JBI Based ESB Products | Web Service Based ESB Products | |
4.2 | * Apache ServiceMix * Celtix * Sun GlassFish * Jboss | * Apache Synapse * Camel |