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 |