在我的工作中,如果没有人颂扬MQ系列或MSMQ之类的优点,很难走五分钟,而且我总是想知道,在流行语的闪光过去之后,这些精彩设备的实际例子是什么?真实世界.
我正在寻找的东西可能会激发我找到其中一个的用途,或者给我一些我可以用来评估消息总线/消息代理/消息队列的度量 - 地狱,甚至可以解释的东西上述消息*事物之间的区别是什么.
MQ系列或MSMQ等消息队列解决方案广泛用于集成分布式企业应用程序,尤其是在不同平台上运行.正确完成(使用持久性队列,异步设计而不是"RPC over MQ"并注意操作要求),与同步请求/回复集成(如RPC或样板Web服务(其可用性是其产品)相比,这为您提供了高可用性相应的可用性:同步整合10个系统和99%的可用性,使您的组合可用性不超过90% - 或者如果只有一个弱链接则更糟糕.请注意,这需要消息队列本身具有高可用性:我们使用我们的大型机来实现这一目的(猜测我们正在使用哪种产品!).
消息(或集成)经纪人和"公共汽车"是一个更复杂的鱼.他们可以添加
不同内容表示之间的转换(文本编码和代码页)
监督,检测目标系统何时不接收排队的消息并发出警报或自动重启
转换,当系统不"说同一种语言"并以不同方式表示客户或产品记录时:这原则上可以帮助您以不同的速率部署新版本
路由(直到并包括发布/订阅)以使发送系统与接收者的详细信息分离,从而减少目标系统中的更改的影响
编排,您可以在多个系统之间协调消息,以跟踪更长的实际业务流程(例如,从客户订单到交付到开票).
我已经按照大致递增的难度(和潜在的奖励)顺序列出了这些功能.您获得的越高,您的组织(包括业务方面)需要越成熟,以获得优势.