2011-12-21 143 views
0

是否有任何框架或平臺提供消息交換的可靠性,靈活性和可擴展性的方式?我有以下情況:自定義消息協議的消息代理?

我有外部設備與我們的系統交換消息。這些設備實際上並不完全相同,並且多個設備具有自己的特定協議。我正在尋找的是一箇中間層平臺或框架(Message Broker或ESB)作爲一種高度靈活的集成解決方案,可以支持不同的協議,而不會改變整個系統。同時,我必須確保整個系統架構的可靠性和可擴展性。

設備將與之交換消息的系統是用.Net編寫的。然而,我想知道使用該消息交換平臺與Java或PHP系統交互的可能性。

我讀到了Apache家族,即ActiveMQ,Camel和ServiceMix以及Microsoft Biztalk。但我無法決定什麼適用於上述情況,因爲我從未使用過任何這些技術,也沒有深入瞭解這些技術。

回答

2

我們一直在使用ActiveMQ消息代理來實現多個.Net和Java應用程序之間的集成點。 ActiveMQ建立在JMS(Java消息服務)規範的基礎上,並提供一套API和庫以供不同開發環境使用(ApacheNMS for .Net)

JMS標準允許任何應用程序/設備成爲訂戶或發佈者提供了API,因此無論您使用何種軟件構建它,都可以通過調用指定的API來發送/接收來自代理的消息。

AMQ是一個開源項目,因此它是免費的。它有一個積極的開發社區,往往對用戶的響應非常敏感。

我們花了一些時間按我們的意願配置AMQ,現在我們成功運行經過測試的主從代理配置,並確保在一個代理髮生故障時進行適當的故障切換。這保證了對我們業務至關重要的高可用性。

0

IBM Integration Bus將完成所有這些工作。