他们有很多共同的特点.但是如何区别? MOM允许异步,而SOA不是,这是唯一的区别? SOA,面向服务的体系结构,是一种架构,用于定义如何在不同应用程序之间组织对业务信息的访问.简而言之
MOM允许异步,而SOA不是,这是唯一的区别?
SOA,面向服务的体系结构,是一种架构,用于定义如何在不同应用程序之间组织对业务信息的访问.简而言之,一个应用程序通常需要一些应用程序需要的信息(可能是订单文件或任何其他信息).另一个应用程序可能能够对该条信息进行相应的处理,因此它具有一个能力.第一个应用程序消耗第二个应用程序的服务,该服务提供服务(无论底层技术如何,可以是JMS,HTTP / SOAP,HTTP / REST,EMail,FTP等).为了做到这一点,第一个应用程序和服务之间的合同必须被定义为将消息格式(XSD或类似的),协议(HTTP / SOAP?JMS?)等清除掉.另一方面,MOM,面向消息的中间件只是一个软件/中间件平台系列.它们是实际的实现,而不是像SOA这样的高级概念.它们可用于实现SOA架构,事件驱动架构或其他体系结构.通常,MOM丰富了一组异步消息的应用程序,其中MOM服务器存储和转发消息.通常,MOM实现中内置了事务,Guranteed传递,故障转移,松耦合和负载均衡等事务. MOM的例子有IBM WebSphere MQ,Apache ActiveMQ,RabbitMQ,JBoss HornetQ等.