• Mule的基本配置元素:Endpoint、Transformer、Filter、Flow


    1.Endpoint

    Mule的endpoint和WS中的endpoint是非常类似的,它是消息进出(读写)的入口,不同的是mule的endpoint可以基于各种不同的传输协议。
    mule的endpoint分成两类:

    •     global endpoint:全局的endpoint,一个flow或service的inbound或outbound endpoint可以通过ref属性引用这些endpoint.
    •      low或service内的inbound或outbound endpoint,这类endpoint仅限于flow或service内,可以认为是一种局部endpoint.

    每一个endpoint都必须指明它的传输协议是什么,或者说它是什么传输类型的endpoint,指定方式有两种:

    •      在元素上追加传输协议前缀:

    •     通过元素的address属性指定:
    断点,也就是mule暴露给外部应用可以访问的端点,同理,outbound就是message从mule向外“流出”的端点,也就是一个可以访问的外部应用的端点。比如一种最典型也是最普遍的WS代理配置,也就是将不同物理地址的WS统一挂接到ESB,由ESB以一致的地址发布,如:


    在这段配置中,ESB把原物理地址为:http://server1:6090/weather-forecast 的服务经过包裹,以新的地址http://localhost:8090/weather-forecast 发布出去。作为inboundAddress,http://localhost:8090/weather-forecast是ESB对外“开放”或“发布”的端点,也就是消息流入ESB的端点。outboundAddress则是ESB路由的目的地,其往往是某个现存系统的访问入口。


    2.Transformer


    Transformer是负责消息传输过程中的数据转换,如从JSON对象到一个Java对象的转换:

    3.Filter

    Filter是用于配置是否要对消息进行过滤的配置项,除像wildcard-filter这样的基本Filter,Mule还有功能强大的逻辑Filter用于进行过滤条件的组合。


    4.Flow


    Flow是mule的最基本处理单元。它从一个inbound endpoint开始,对message进行了一系列的处理,然后从outbound endpoint输出。这期间会flow会使用到上述提及的多种组件参与处理,如transformer、filter等等,而且还可能调用java或其他语言实现的组件进行处理,应该说在应用集成里,flow所要实现的,正是所谓的“集成逻辑”。

  • 相关阅读:
    【Java常见的几种设计模式】
    详细介绍Webpack5中的Plugin
    Hibernate 一对多关系映射
    Win10自动更新之后很卡怎么办?
    Linux:最全的开发常用命令
    基于R语言平台Biomod2模型的物种分布建模与可视化分析
    ​SAP MM 使用两个STO实现免关税跨国公司间转储
    win10彻底禁用wsappx的方法
    JDK21的虚拟线程是什么?和平台线程什么关系?
    Linux-MySQL数据库之高级SQL 语句一
  • 原文地址:https://blog.csdn.net/cqn2bd2b/article/details/127814455