3. • Applications Need to Talk
• Strategies
– File Sharing
– Single Database
– Messaging
• Most common Approach for
EAI and Basis of SI
• Messages can be Enriched,
Transformed, Routed, Filtered
4. SI History
• Nov 2007 – First Commit
• Nov 2008 – 1.0
• Nov 2010 – 2.0
• Jun 2013 – 2.2.4
5. Why Spring SI
• Spring has a good footprint
• Large Range of EndPoint Adapters
– File systems, FTP, REST, Sockets etc
• Light Weight
• POJO Based
• Non Intrusive
• Zero Configuration
11. Message Channel
• Decouples Consumers and Producers
• Point to Point or Pub/Sub
• Enforces Data Type Consistency
Spring Integration Has Pipes And Filters as Core Integration Pattern
23. Performance – MS Value
• Amazon – 100ms == 1% of lost sales
• Yahoo – 400 ms == drops traffic 5-9%
24. Typical Requirements
• Latency Requirements
– Few ms +
• Throughtput Requirements
– Message type dependant
– 10s of hundreds of thousands
Source : Andrew
Elmorehttp://www.springsource.org/node/22599
27. References
• Spring Integration Homepage http://www.springsource.org/spring-
integration
• Spring Expression
http://static.springsource.org/spring/docs/3.0.x/reference/expressions.html
• http://www.javacodegeeks.com/2012/06/rube-goldberg-spring-
integration_22.html
28. Spring Integration Hands On
Mak Bhatamrekar
github :http://github.com/makrand-bkar
twitter : mak-bkar
url : www.careerinjava.com
http://meetup.com/my-ajcp
Atlanta Java Concept Pros
Editor's Notes
Whats the Problem we are trying to solve
Transport - Waiter Takes Order and Moes to BaristaAsynchronous - Multiple ActiviesTranslation - Menu Item -> Number -> RecipeRouting - Orders Arrive Back at Table
Bruice Distributed System there are 3 ConcernsConsistency,Availablity – Every request has a guaranteed response, ParitionTolerence
Advantages-- Parallel-- Can Easily Add New Logic
Messages carry informationChannel Represents the Locations where Msg is being sent
Buffering Message – Variable Load , ability to withstand highloads is an important performance factor