Spring Integration

本文介绍了 Spring Integration 的设计理念及其与《企业集成模式》一书的关系,并对比了 Spring Integration、Apache Camel 和 Mule ESB 三个集成框架。文章还详细解释了 Spring Integration 中 Adapter 和 Gateway 的区别,以及 Inbound 和 Outbound 的工作流程。
[b]Spring Integration Reference Manual:
[url]http://static.springsource.org/spring-integration/reference/htmlsingle/#spring-integration-introduction[/url][/b]

Spring integration 的理念来自 《Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions》一书,该书在线:
[url]http://www.enterpriseintegrationpatterns.com/toc.html[/url]
另外两个也是开源的 Integration framework: [b]Apache Camel & Mule ESB[/b]. 三者的比较:
[url]http://www.kai-waehner.de/blog/2012/01/10/spoilt-for-choice-which-integration-framework-to-use-spring-integration-mule-esb-or-apache-camel/[/url]
[url]http://www.slideshare.net/KaiWaehner/spoilt-for-choice-how-to-choose-the[/url]


String integration 中 Adapters 和 Gateways 的区别、inbound 和 outbound 的区别:
[url]http://docs.spring.io/spring-integration/docs/latest-ga/reference/htmlsingle/[/url]
[quote]9. Endpoint Quick Reference Table
To recap, Inbound Channel Adapters are used for one-way integration bringing data into the messagng application. Outbound Channel Adapters are used for one-way integration to send data out of the messaging application. Inbound Gateways are used for a bidirectional integration flow where some other system invokes the messaging application and receives a reply. Outbound Gateways are used for a bidirectional integration flow where the messaging application invokes some external service or entity, expecting a result.[/quote]也可以参考另一篇博文:
[url]http://wuaner.iteye.com/blog/1740566[/url]


[b]Tips[/b]:[quote]1. <int-jdbc:outbound-channel-adapter .../> is a instance of JdbcMessageHandler.
2. A Channel Adapter is a Message Endpoint that enables connecting a single sender or receiver to a Message Channel. Spring Integration provides a number of adapters out of the box to support various transports, such as JMS, File, HTTP, Web Services, Mail, and more. [/quote]
Interesting applications rarely live in isolation. Whether your sales application must interface with your inventory application, your procurement application must connect to an auction site, or your PDA’s PIM must synchronize with the corporate calendar server, it seems like any application can be made better by integrating it with other applications. All integration solutions have to deal with a few fundamental challenges: • Networks are unreliable. Integration solutions have to transport data from one computer to another across networks. Compared to a process running on a single computer, distributed computing has to be prepared to deal with a much larger set of possible problems. Often times, two systems to be integrated are separated by continents and data between them has to travel through phone-lines, LAN segments, routers, switches, public networks, and satellite links. Each of these steps can cause delays or interruptions. • Networks are slow. Sending data across a network is multiple orders of magnitude slower than making a local method call. Designing a widely distributed solution the same way you would approach a single application could have disastrous performance implications. • Any two applications are different. Integration solutions need to transmit information between systems that use different programming languages, operating platforms, and data formats. An integration solution needs to be able to interface with all these different technologies. • Change is inevitable. Applications change over time. An integration solution has to keep pace with changes in the applications it connects. Integration solutions can easily get caught in an avalanche effect of changes – if one system changes, all other systems may be affected. An integration solution needs to minimize the dependencies from one system to another by using loose coupling between applications.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值