今週、MuleSoftは、エンタプライズ サービスバス、Mule ESBの バージョン3.1をリリースした。Mule 3.0は、9月にリリースされ、唯一の大目標が「全てを簡単にして、Mule 3をもっと多くの人に使ってもらう」ことだった。 Mule 3.1は、Mule Cloud Connect, Mule Flow とBPMに焦点を当てて、更に単純化した。
Mule Cloud Connect は、公に入手できるサービスを使うことができるMuleの機能をブランド設定したものである。バージョン3.1には、Twitter, SalesForce そしてオンライン決済サービスの Authorize.Net と Cybersourceを使うための4つのコネクターのみが付いている。Muleのすべての発表では、例として Twitterを使っているので、以下にどのように変更するかをクレジットカード決済を処理する Authorize.NETの例を記している。
<auth:config merchantLogin="<YOUR MERCHANT LOGIN>" merchantTransactionKey="<YOUR MERCHANT TRANSACTION KEY>" name="auth" testMode="true"/> <flow name="payment"> <http:inbound-endpoint address="http://localhost:9898/payment" exchange-pattern="request-response"/> <auth:authorization-and-capture cardNumber="370000000000002" expDate="12/12" amount="400"/> <expression-transformer> <return-argument evaluator="bean" expression="responseReasonText"/> </expression-transformer> </flow>
開発者は、設定に自分独自のXMLスキーマを使って、自分のクラウド コネクタ(説明、ログインが必要)を作ることもできる。
バージョン3.0で導入されたMule Flowが改善されて、3つのより高レベルの抽象化をサポートしている。"invoke"は、サービスを呼び、"poll" は、エンドポイントを監視して、何かが来たときにプロセスを起動する。"enricher"は、システム コールの結果を取って、現在走っているプロセスのペイロードにそれを注入する。更に、バージョン3.1は、基になっている Apache CXFのバージョンを2.3.0にアップグレードし、 Spring Security v3へのサポートを追加した。
最後に、Muleは、Business Process Management (BPM)との関係を緩くした。jBPMは、「今回、トランスポート層ではなく、Muleのコンポーネントである。このおかげで、外部のBPMエンジンと繋げることもできるし、Mule「内部」のjBPMを使ってメッセージ処理することもできる」。この変更の実質的な意味は、Mule 3.0.1では、非推奨としてあったBPMトランスポートが、3.1では、取り除かれた、ということである。BPMとやり取りする推奨の方法は、"<bpm:process>"メッセージ プロセッサーを介することである。
Muleのソースコードは、CPALライセンスのもとでオープンソースであり、Mule管理コンソール のような追加のフィーチャや 他のフィーチャ には、商用ライセンスが要る。Muleの代替としては、Apache ServiceMix、Apache SynapseそしてJBoss ESBがある。3.1のFlow機能により、Mule もまた、Apache CamelやSpring Integrationのような統合ソリューションに似てきている。