Apache ServiceMix介紹
<p> <a href="http://servicemix.apache.org/">Apache ServiceMix</a> 是一個廣泛使用的開源ESB,適合SOA項目的集成,它提供類似商業ESB產品一樣的功能呢,它的核心是基於開放標准和規范。</p>
<p> ServiceMiX綜合了許多常用的開源項目,它的傑出的消息路由能力是基於. <a href="http://camel.apache.org/">Apache Camel</a>,這是一個輕量的集成框架,使用標准的企業集成模式(EIP)和領域規范語言DSL來定義集成路由。</p>
<p> 一個集成的項目需要可靠的消息基礎設施,ServiceMix使用嵌入的 <a href="http://activemq.apache.org/">Apache ActiveMQ</a> 作為消息代理broker,這是一個使用最廣泛的消息產品之一,充分兼容JMS規范,它提供很多消息功能,能夠擴展到幾千個客戶端,支持多集群和高可靠性。</p>
<p> 為了支持Web服務和RESTful,ServiceMix使用了<a href="http://cxf.apache.org/">Apache CXF</a>,CXF是一個Web服務開源框架,支持 JAX-WS 和 JAX-RS兩種標准,以及所有主流的WS-* 規范。</p>
<p> ServceMix的核心是一個OSGI容器,<a href="http://www.osgi.org/Main/HomePage">OSGi </a>是負責加載和運行動態軟件模塊,一個OSGI bundle是一個普通的Java Jar文件,包含OSGI元數據信息,有關該Jar中類和資源信息。</p>
<p> ServiceMix中OSGI的運行容器是 <a href="http://karaf.apache.org/">Apache Karaf</a>,提供部署 OSGI動態配置 集中式日志系統,遠程通過JMX管理系統和可用於管理的控制台, 使用Karaf能夠管理模塊的全部生命周期,不僅支持OSGI bundles,也支持普通java的.jar文件,XML Spring XML和war 文件。</p>
<p> ServiceMix部署這些開源項目是基於Karaf OSGI之上的out-of-the box方式,ActiveMQ和Camel注冊Shell命令道Karaf,這樣它能管理嵌入的JMS中間件和Camel運行環境,也可以根據項目需要定制這些功能,下圖是ServiceMix技術總結圖:</p>
<p><img src="https://img2018.cnblogs.com/blog/1112483/201906/1112483-20190610140129319-169218162.png" alt="servicemix" width="536" height="380"></p>
<p> ServiceMix利用了一些非常成功的開源項目。這些項目都是基於開放標准和行業規范,旨在提供互操作性的最高水平。今天ServiceMix已經部署在數以千計的客戶單位中,成為在許多關鍵任務應用非常流行的ESB。</p>
原文地址:https://www.jdon.com/soa/servicemix.html
</div>