2011-07-13 25 views
0

我必須有一種中介/路由系統,應該與後端的幾個系統對話。它看起來是這樣的:我可以爲我的問題使用Mule,Apache Camel,ServiceMix或其他ESB嗎?

Client 
     | 
     | 
--Mediator- 
| |  | 
| |  | 

Sys系統一個課程乙SYSC .....

現在客戶端通過HTTP(http://foo/bar?id=1)呼籲調停幾種方法和這些應該被路由到配置的系統某處(可能xml文件或類似)

現在我也有一個要求,該系統和一些方法應該能夠處理身份驗證,以便將有一個http://foo/login和中介應該返回一個令牌,可以使用在隨後的電話如http://foo/secretbar。如果未提供令牌,則調用應返回特定的錯誤。

因爲後端系統並不總是說相同的語言(一些JMS,一些FTP,...),我想要靈活,簡單,可擴展的解決方案。現在我閱讀了上述產品,並想知道它們中的一些是否適合我的使用情況。我知道他們可以將消息發送/路由到其他系統,但我沒有發現任何身份驗證問題的示例(也可能是我沒有足夠的搜索;)。有沒有這樣的系統?或者我應該在哪些文檔中更深入地查看我的要求?

回答

1

駱駝肯定可以幫你解決這個問題。 Servicemix,但它更多的是承載這些服務的容器(通常用駱駝寫成)。駱駝是絕對簡單,可以獨立運行,嵌入在應用服務器或OSGi容器等

看到camel-jetty頁面瞭解更多信息關於駱駝

與HTTP /碼頭端點設置驗證見Camel EIPs頁面爲企業集成模式的完整列表,可以幫助實現複雜的路由要求等。

請參閱Camel Components頁面以獲取Camel實施的允許您與各種技術接口的組件完整列表((jms,文件,http,jdbc,ftp等)。

另外,參閱一般比較不同產品的詳細信息,此討論...

Apache Camel and other ESB products

0

駱駝既提供駱駝HTTP和駱駝碼頭,但你可以配置的方式是有限的那些。 看來您需要某種會話來處理您的身份驗證,因此編寫自己的servlet並將請求傳遞給servlet內部的駱駝會更保守。 但你也可以使用駱駝碼頭會話支持和訪問會話處理一個處理器內部認證: 更多在這裏:cammel-jetty

0

騾子肯定可以提供你所要求的所有的內容和更多。首先,您可以通過XML Spring輕鬆更改Mule的路由。其次,Mule來自一個很大的no。的傳輸,包括ActiveMQ,FTP和HTTP/s。第三,由於Mule的Jersey和CXF模塊,操作可以作爲RESTful服務或Web服務暴露給客戶。最後但並非最不重要,Mule允許您通過單例對象XML元素爲所有客戶端請求使用相同的對象。這個元素可以幫助您滿足您的身份驗證需求,因爲它可以用於在客戶端會話期間存儲客戶端的安全令牌。巧合的是,we最近開發了一個與您的使用案例非常相似的Mule演示應用程序。我們計劃公開代碼,但在此期間,您可以在http://androidmulecrm.muleion.com/找到有關此應用的更多信息。

相關問題