是否有任何框架或平台以可靠,灵活和可扩展的方式提供消息交换?我有以下情况:
我有外部设备与我们的系统交换消息。这些设备实际上并不相同,多个设备都有自己的特定协议。我正在寻找的是中间层平台或框架(Message Broker或ESB)作为一种高度灵活的集成解决方案,支持不同的协议而不会改变整个系统。同时,我必须确保整个系统架构的可靠性和可扩展性。
设备将与之交换消息的系统是用.Net编写的。但是,我想知道使用该消息交换平台与Java或PHP系统进行交互的可能性。
我读过Apache系列,即ActiveMQ,Camel和ServiceMix以及Microsoft Biztalk。但我无法决定什么适用于上述案例,因为我从未使用过任何一种,也没有深入了解这些技术。
答案 0 :(得分:2)
我们一直在使用ActiveMQ消息代理来实现多个.Net和Java应用程序之间的集成点。 ActiveMQ构建于JMS(Java消息服务)规范之上,提供了一组API和库,可在不同的开发环境中使用(ApacheNMS用于.Net)
JMS标准允许任何应用程序/设备通过提供的API成为订阅者或发布者,因此无论您使用何种软件构建它,都可以通过调用指定的API从代理发送/接收消息。
AMQ是一个开源项目,因此它是免费的。它有一个活跃的开发社区,往往对用户非常敏感。
我们已经花了一些时间来按照我们的意愿配置AMQ,现在我们成功运行了经过测试的主从代理配置,并确保在一个代理发生故障时进行适当的故障转移。这保证了对我们业务至关重要的高可用性。
答案 1 :(得分:0)
IBM Integration Bus将完成所有这些工作。