AI 年度盘点与2025发展趋势展望,50+案例解析亮相AICon 了解详情
写点什么

Spring Integration RC1 孵化:与 Iwein Fuld 谈主要优势、部署及未来发展方向

  • 2008-11-07
  • 本文字数:1586 字

    阅读完需:约 5 分钟

Spring Integration 提供了 Spring 编程模型的一个扩展,以支持众所周知的企业集成模式。 RC1 在本周宣布可用之后,InfoQ 采访了 SpringSource 的 Iwein Fuld 以了解主要优势、部署场景和 Spring Integration 的未来方向。

Spring Integration 能在基于 Spring 的应用中进行简单的消息通信,并通过简单的适配器与外部系统集成。这些适配器提供了一个更高级别的抽象,超越了 Spring 对远程调用、消息和调度的支持。其主要目标是在保持关注点分离的同时,为构建企业集成解决方案提供一个简单的模型,该模型对产出可维护、可测试的代码来说是必不可少的。

InfoQ 与 Iwein Fuld 讨论了 Spring 家族的这一新成员。

InfoQ:Iwein,你认为使用 Spring Integration 的主要优势是什么?

传统的消息都以 ESB 的形式,或至少以 JMS 代理的形式引入企业。这需要创建一个新的环境,或者在现有应用中进行较大的改变。Spring Integration 与此不同,因为它从现有应用的视角进行集成。它允许开发人员为应用进行声明式的异步集成,而不用改变服务实现。 在我们的实现中,我们非常注意保持事情的简单性。保持开发人员利用框架完成必须做的工作尽量简单很重要,不仅如此,保持开发人员调试时必须理解的代码尽量简单也同样重要。

跟 Spring 的其它部分一样,我们在应用代码之外维护底层代码。所以只要你坚持并发编程的最简单规则——无状态服务和不变对象,将你的服务绑定到任何生产者或消费者上都会轻而易举。如果你想从 JMS 转换为 RMI(这只是举一个例子),你并不用修改你的代码。

InfoQ:常见的部署场景有哪些?

最常见的,人们将结合 JMS 使用 Spring Integration。JMS 配置的简化,仅仅这一点就是开始使用它的强有力的理由。当然还有其它应用,因为我们并不依赖 JMS 作为传输机制。 例如你可以使用 Spring Integration 在 Web 客户端实现一个等待页面。如今许多应用程序都在服务器端阻塞线程,以等待一个外部的 Web 服务调用。使用 Spring Integration 就能很容易地予以避免,而不需要 JMS 条件或自己编写并发代码。如果你有支持“推”(push)的富客户端,你甚至不用编写自己的缓存,客户端就能“拉”(poll)出缓存。

我们在论坛上看到很多人有简单的 EDA,它基于目录中提供的文件,或者是发送到特定地址的电子邮件。我们已经让编写自己的适配器变得很容易,人们对 XMMP、OSGi、Twitter 的尝试一直都是成功的。由于将这些东西绑定在一起是那么容易,以至于我都期望 Spring Integration 能对使网络成为更有趣的地方而大有裨益。

InfoQ:你如何看待 Spring Integration 未来的发展?

首先,我们正在增加适配器的种类。Spring Extensions 项目主办了专门的 Spring Integration Adapters 项目,该项目将存放不同的适配器,你能从中进行挑选。这给社区提供了一种很好的方式来贡献他们认为最有用的适配器。 我们一直在尝试的第二件事情是用 Spring Integration 构建可伸缩的应用。因为它能用非常简洁的方式进行并发处理,这可能是在多核环境下构建网格方案很好的备选方法。我们期望至少以后能实现一些示例。

一直以来,我们多次被问到 Spring Integration 是不是一个 ESB,简短的回答是“不是”。但是从我们提供的组件构建 ESB 会非常容易。我们通常认为没有 ESB 会更好一些,但看起来似乎 ESB 构建者会使用 Spring Integration。

出于个人兴趣,对 Spring Integration 用于与 Amazon EC2 协同工作的自动伸缩环境,我已经有了一些构想。这些东西看起来非常有希望,但对企业来说,为当前存在的问题找到解决方案要比追随最新的流行语更为重要。我认为我们比 OSGi 早实现 FTP 集成是一种有力的标志。我们关心的是企业如今不得不处理的底层问题。

你可以在 InfoQ 上获取更多关于 ** Spring 家族 SOA 架构企业集成模式 ** 的内容。

查看英文原文: Spring Integration RC1 hatched: Q&A with Iwein Fuld on key benefits, deployment & future directions

2008-11-07 11:471051
用户头像

发布了 151 篇内容, 共 62.0 次阅读, 收获喜欢 18 次。

关注

评论

发布
暂无评论
发现更多内容

这份阿里P8大佬手写的 “Java核心面试精选” 疯传阿里内网

码农之家

Java 编程 程序员 互联网 面试

1分钟get什么是训练数据

澳鹏Appen

人工智能 机器学习 大数据 数据集

微擎的日志文件保存在哪里?如何查看。

微擎应用商城

合约量化机器人系统开发|合约量化机器人软件APP开发

系统开发

合约量化交易机器人系统开发|合约量化交易机器人APP软件开发

5分钟教你学会GaussDB数据分布策略设计

华为云开发者联盟

数据库 分布式数据库 GaussDB GaussDB(for openGauss) 数据分布

十大经典系统架构设计面试题

程序员石磊

架构 面试 架构设计

与同事组队,用 3s 把工作节点打通,建立信赖与协作关系。

叶小鍵

使用transform制作书本翻页效果

空城机

JavaScript 大前端 4月日更 书本翻页

如何利用ipad随时随地开发代码

程序员石磊

ipad 编程 远程

Rust从0到1-枚举-match控制流

rust 枚举 match

从能耗大户“变身”智能绿色办公,只需一步到位!

IoT云工坊

物联网 API sdk 办公空间 智能转型

MySQL性能监控与调优

Sakura

4月日更

量化合约机器人APP开发|量化合约机器人软件系统开发

系统开发

量化合约交易机器人系统开发|量化合约交易机器人APP软件开发

系统开发

浅谈BSS3.0产品“守成”之策上 • 架构提升篇

鲸品堂

架构 运维 性能

web简易视频聊天室+媒体流插入

anyRTC开发者

大前端 音视频 WebRTC RTC

vue2的$refs在vue3组合式API中的替代方法

devpoint

Vue3 $refs vue2 this.$refs

百度联合清华,全球首个十亿像素数据集来了!

百度大脑

人工智能 百度

Google Analytics

曦语

数据分析

Kafka源码阅读笔记(1)

InfoQ_Springup

kafka

13年Java开发经验精华总结!29大核心知识模块,带你直达架构师!

Java架构追梦

Java 阿里巴巴 架构 全栈知识点

合约跟单交易系统开发量化策略

薇電13242772558

数字货币

深入浅出带你掌握线程、多线程和线程池

华为云开发者联盟

Java 线程 多线程 线程池 操作系统

Linux df 命令

一个大红包

linux命令 4月日更

数字货币自动交易机器人APP开发|数字货币自动交易机器人软件系统开发

系统开发

HTTPS双向认证

上海派拉基础研发

https HTTP ssl SSL 连接

我们真的可以使世界成为无密码的地方吗?

龙归科技

网络 安全性

11 个非常实用的 Python 和 Shell 拿来就用脚本实例!

JackTian

Python 程序员 Shell linux运维 脚本语言

【详解文件IO系列】讲讲 MQ 消息中间件 (Kafka,RocketMQ等)与 MMAP、PageCache 的故事

Linux服务器开发

网络编程 Linux服务器开发 底层实现原理 网络io C++后端开发

【LeetCode】删除排序链表中的重复元素Java题解

Albert

算法 LeetCode 4月日更

Spring Integration RC1孵化:与Iwein Fuld谈主要优势、部署及未来发展方向_Java_Dio Synodinos_InfoQ精选文章