扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
Mule的消息路由1
当谈论整合应用时,消息路由备受关注。当我们确定了各个应用,并选择Mule作为整合平台,也知道在Mule的服务中可以使用哪些Java类和web services处理消息,那么为了让消息正确地在服务间流转,该如何将所有的事情整合在一起,从而确保获得我们所需要的的结果呢?
下面介绍消息路由器的相关核心概念:
端点(Endpoints)定义了发送和接收消息的通道(channel)。例如,一个购物组件可能会接收到一个HTTP订单请求。一旦该组件处理完订单请求,它可能会发送一个 JMS消息到一个主题(topic)上,以通知审计系统,并返回一个HTTP响应。可以通过端点监听JMS消息、发送email、调用web services等。
入站路由器(Inbound router)控制服务如何处理入站(incoming)消息,比如,有选择地只消费符合特定条件的消息,或者在将消息转发给服务处理之前,将拥有同一group ID的消息聚合(group)在一起。
出站路由器(Outbound router)控制如何分发经服务处理过的消息,比如,将消息发送到一个接受者列表,或者将消息分解成多个部分,并将它们分别发送至不同的端点。
异步回复路由器(Asynchronous reply router)常用于request/response场景。在这些场景中,发送一个请求会触发一个或者更多的请求,并且在返回响应之前,需要考虑这些请求的结果。典型的例子是请求发送后,会并行执行任务(task)。在返回响应之前,必须执行完每个任务,处理完结果。
Catch-all策略在当前消息找不到路由路径时才被调用。入站和出站端点都可以配置catch-all策略,因此可以捕获到任何孤立的消息,并将这些消息路由到一个共同的位置。
过滤器提供用于调用特定路由器的逻辑。通过逻辑过滤器AndFilter、OrFilter和NotFilter可以将过滤器组合在一起使用。并非所有的路由器都需要使用过滤器,但是所有的路由器都支持过滤器。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者