Spring Integration
系统集成Spring Integration提供了基于Spring的EIP(Enterprise Integration Patterns,企业集成模式)的实现,主要解决不同系统之间的交互问题,通过异步消息驱动来达到系统交互时系统之间的松耦合,由Message、Channel、Message EndPoint组成。
一、Message:用来在不同部分之间传递的数据
1、消息体(payload):任何数据类型,如XML、JSON、Java对象等
2、消息头(header):表示的元数据就是消息体的内容
二、Channel:消息发送者发送者发送消息到通道(Channel),消息接受者从通道(Channel)接收消息
1、顶级接口MessageChannel,其子接口:
1)PollableChannel:可轮询
2)SubscribeChannel:可订阅
2、常用消息通道
1)PublishSubscribeChannel:允许广播消息给所有订阅者
2)QueueChannel:允许消息接收者轮询获得信息,用一个队列接收消息,队列容量可配
3)PriorityChannel:可按照优先级将数据存储到队列,依据消息头中priority属性
4)RendezvousChannel:确保每一个接收者都接收到消息后再发送消息
5)DirectChannel:默认消息通道,允许将消息发送给一个订阅者,然后阻塞发送直到消息被接收
6)ExecutorChannel:可绑定一个多线程的task executor
3、通道拦截器ChannelInterceptor:用来拦截发送和接收消息的操作
三、Message EndPoint:是真正处理消息的组件
1、Channel Adapter:通道适配器,是一种连接外部系统或传输协议的端点,可分为入站和出站,单向的
2、Gateway:消息网关,提供了双向的请求/返回集成方式,也分为入站和出站
3、Service Activator:可调用Spring的Bean来处理消息,并将处理后的结果输出到指定的消息通道
4、Router:路由,可根据消息体类型、消息头的值、定义好的接收表 作为条件,决定消息传递到的通道
5、Filter:过滤器,类似于路由,决定消息是否可以传递给通道
6、Splitter:拆分器,将消息拆分成几个部分单独处理,拆分器处理的返回值是一个集合或者数组
7、Aggregator:聚合器,将多个消息合并为一个消息。
8、Enricher:消息增强器,增加额外的消息到已有的消息中,又分为消息体增强器和消息头增强器
9、Transformer:转换器,对获得的消息进行一定的逻辑转换处理
10、Bridge:连接桥,可以将两个消息通道连接起来
Spring Integration相关推荐
- #翻译NO.3# --- Spring Integration Framework
为什么80%的码农都做不了架构师?>>> 2.4 Message Endpoints A Message Endpoint represents the "filte ...
- Spring Integration学习资料
Spring Integration学习资料 1.1 背景 Spring框架的一个重要主题是控制反转.从广义上来说,Spring处理其上下文中管理的组件的职责.只要组件减轻了职责,它们同时也被 ...
- Spring Integration 4.3.10 发布,Spring 消息通信
Spring Integration 4.3.10 发布了.Spring Integration 能在基于 Spring 的应用中进行简单的消息通信,并通过简单的适配器与外部系统集成.这些适配器提供了 ...
- #翻译NO.5# --- Spring Integration Framework
为什么80%的码农都做不了架构师?>>> 本人觉得这一章很重要,那就是 Spring默认的channel 的实现 DirectChannel,这个要大家多按照原文理解,开发者为 ...
- ESB学习笔记(Spring Integration实战)
http://wangleifire.iteye.com/blog/351749 介绍 Spring Integration是Spring公司的一套ESB框架. 前面ESB介绍中我也做了一定了解.我们 ...
- #翻译NO.4# --- Spring Integration Framework
为什么80%的码农都做不了架构师?>>> Part III. Core Messaging This section covers all aspects of the cor ...
- java中channelmessage,MessageStore支持的QueueChannel与Spring Integration Java Config
Spring Integration reference guide指的是使用MessageStore实现为QueueChannel提供持久性. 提到了很多次,但是所有示例都使用XML配置,即 但是Q ...
- Java开源项目:Spring Integration
2019独角兽企业重金招聘Python工程师标准>>> Java开源项目:Spring Integration http://www.importnew.com/16538.html ...
- streaming api_通过Spring Integration消费Twitter Streaming API
streaming api 1.概述 众所周知, Spring Integration具有用于与外部系统交互的大量连接器. Twitter也不例外,而且很长一段时间以来,因为Spring Social ...
- mongodb dsl_具有Java DSL的Spring Integration MongoDB适配器
mongodb dsl 1引言 这篇文章解释了如何使用Spring Integration从MongoDB数据库中保存和检索实体. 为了完成此任务,我们将使用Java DSL配置扩展来配置入站和出站M ...
最新文章
- linux挂载移动硬盘 格式化_linux系统下如何挂载NTFS移动硬盘
- 小H和游戏(无根树转有根树,思维)难度⭐⭐⭐★
- centos7 搭建FastDFS服务器
- 这些概念都不懂,别说你会机器学习
- matlab 次坐标轴 标注,matlab标注坐标轴
- 电信公网ip和内网ip的区别_私有IP共有IP和弹性IP的区别
- bzoj2339: [HNOI2011]卡农
- Tomcat中配置文件conf修改的一些常识
- 使用ExtendSim进行水管理、可持续性和环境仿真建模
- Matlab图像处理系列4———图像傅立叶变换与反变换
- qt.qpa.plugin: Could not load the Qt platform plugin “xcb“ in ““ even though it was found.
- linux kernel配置调试方法
- 约克大学计算机语言班,约克大学语言班申请
- js获取元素下的第一级子元素
- 44 Defending the Theory of Evolution Still Seems Needed
- 网盘搜索工具2019
- js 中 java 代码_在js中嵌套java代码
- US Credit repay
- LC 559. Maximum Depth of N-ary Tree
- 梅林 自动订阅_如何为4万名订阅者编写自动令牌空投脚本
热门文章
- 帆软报表FineReport出现数据在一页呈现,并且多行挤在一起的情况
- 实现WIN CE下截屏并且保存到文件
- EMNLP2021论文:元学习大规模多标签文本分类
- Tencent Linux操作系统宣布开源
- 联想电脑(win10)如何保存高清锁屏壁纸
- Bitmap recycle() 源码解析
- linux语言是什么意思,linux怎么读(linux什么意思,准确发音是什么)
- 原生JS实现淡出淡入效果
- R语言使用多个数据类型不同的向量数据创建一个dataframe数据对象、使用$操作符和列名称访问dataframe指定数据列的数据
- 线条边框简笔画图片大全_爱牙日手抄报 手抄报作业大全 模板边框设计