SlideShare a Scribd company logo
1 of 42
Download to read offline
Mule ESB®
Integration Simplified
Rich Remington
rremington@Rich-Software.com
Kiet Bui
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.2
Topics
 Integration, SOA, and ESB
 What Mule ESB is (and isn’t)
 Mule Architecture & Components
 Configuration & Deployment
 Enterprise Integration Patterns
 Main Demo
 Wrap-up & questions
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.3
Goals
 Educate 1..* people about Mule ESB & how
to simplify integration projects
 Give back to an awesome community
 Have a bit of fun
 Confirm “laziness” is a good thing!
– At least some of the time…
 Convince you it’s safe, easy, and fun, to “get
on the bus”
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.4
Background
 Who am I?
– Mathematician wannabe turned software guy
– A bit lazy
 The bucket of water story
– Moral: don’t work harder than you have to - it’s
okay to be lazy ;-)
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.5
 Reduce
– Code complexity & bloat
 Refactor
– Move code to its proper place
 Transformation, Routing, Service Component
 Reuse
– Plan ahead for service/component reuse
– Use pre-built components & solutions
3 R’s - Plan to be Lazy :-)
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.6
Integration Projects
 Why we integrate
– Users don't care where business functions and
information reside
– We don't always own or control all the pieces
 intranet & external partners
– Cheaper than building new solutions from scratch
– Users want access to information from various
devices - browsers, mobile phone, handhelds, ...
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.7
Integration Projects
 How we integrate
– Set up meetings with business domain experts
– Identify systems and processes
– More meetings…
– Map data flows then model
 Patterns are extremely helpful
– Yet more meetings…
– Define services & message formats
– Start coding away…
 But, then what happens?
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.8
Integration Projects
 Three things in life are certain:
– Death
– Taxes
– Requirements will change often!
 Plan for change
– Design & build service/object interfaces for reuse
– Take advantage of loose coupling
– Switch implementations or protocols as needed
over time, but not the interface
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.9
Integration Checklist
Service Interfaces
Mule Topology
Model Event Flows
Fault Handling
Data Transformations
Test Use-cases
Service Implementation
Endpoint QoS, Security
Functional Testing
Implementation
Identify Processes and Systems
Create an Integration Profile
Service Identification
Map Data Flows
Performance Requirements
Security
Redundancy Requirements
QoS Requirements
Define Message Formats
Planning
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.10
Integration Approaches/Technologies
 Custom, point-to-point solutions
– Information silos live on
 Service Oriented Architecture (SOA)
– Enables loose coupling of services that are OS &
programming language independent
– Web services (SOAP, REST), RPC, CORBA, etc.
 Enterprise Service Bus (ESB)
– Helps orchestrate & manage the chaos
– Good place to centralize general services
– Encourages best practices
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.11
The Bus
“There are going to be times when
we can't wait for somebody. Now,
you're either on the bus or off the
bus. If you're on the bus, and you
get left behind, then you'll find it
again. If you're off the bus in the
first place — then it won't make a
damn.”
-- The Electric Kool-Aid Acid
Test (1968)
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.12
Daily Double
 What are two of the 3 R’s?
 What was the moral of the “bucket of water”
story?
 Name the Integration Approach I’m
suggesting you use
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.13
Audience Poll
 How many of you…
– Need to integrate
– Are using point-to-point integration solutions
– Are doing SOA (SOAP, REST, RPC, …)
– Not doing SOA, but planning to
– Are using an ESB
– Not doing ESB, but planning to
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.14
Why use an ESB
 Integration Styles
– Batch
– File Transfer
– Shared Database
– Request/Reply
– Messaging
 Synchronous
 Asynchronous
 ESB Advantages
– Supports all styles
– Bridges legacy systems
– Modular architecture
– Simple and flexible
– Easy to test and maintain
– Scalable
– Can be a step towards
SOA
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.15
8-APR-2009
All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.
Why use an ESB (before)
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.16
8-APR-2009
All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.
Why use an ESB (after)
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.17
What is Mule ESB?
“Mule is a lightweight integration platform and service
container that allows you to quickly and easily
connect your applications together. Mule provides a
robust, secure and scalable platform to build
enterprise applications offering an array of transports
such as JMS, HTTP, Email, FTP, JDBC and many
more. It also offers a rich set of features for web
services, message routing, mediation, transformation
and transaction management. Designed around the
ESB (Enterprise Service Bus) concept.”
-- www.mulesource.org
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.18
What is Mule ESB?
“Mule is a lightweight integration platform and service
container that allows you to quickly and easily
connect your applications together. Mule provides a
robust, secure and scalable platform to build
enterprise applications offering an array of transports
such as JMS, HTTP, Email, FTP, JDBC and many
more. It also offers a rich set of features for web
services, message routing, mediation, transformation
and transaction management. Designed around the
ESB (Enterprise Service Bus) concept.”
-- www.mulesource.org
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.19 All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.
What is Mule ESB?
Service creation and hosting • Expose transport end-points, EJBs, Spring beans, and POJOs as
modular and reusable services
• Host services as a lightweight service container
Service mediation • Separate business logic from messaging
• Shield service components from message formats and protocols
• Enable location-independent service calls
Message routing • Route messages based on content and complex rules
• Filter, aggregate and re-sequence in-bound messages
Data transformation • Exchange data across applications with varying data formats
• Transform data as needed, based on need
• Format messages across heterogeneous transport protocols
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.20 All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.
Mule: Lightweight and Adaptive
Adaptive
integration
• Standards-based and vendor-neutral
• Seamless integration with existing infrastructure
• Plug-in architecture allows for building block
approach
• Use with any application server or standalone
Development
simplicity
• Simplifi ed programming model
• Ease of use through confi guration and control
• Rapid development and deployment through
code reuse
Open source
advantage
• No expensive up-front license commitments
• Access to source code allows customization and
lowers risk
• Vibrant developer community delivering best
practices and modules
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.21
What Mule ESB isn’t
 It does not place restrictions on your environment
 It is not message queuing, it uses other (JMS
capable) products
– And, it does not require message queues
 It is not complex
 It does not need to be “the grand master of all
integration endpoints across the enterprise”
– Think big, start small
– It plays nicely with other ESBs
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.22
Why use Mule ESB
 Decouples Business Logic
 Location Transparency
 Transport Protocol
Conversion
 Message Transformation
 Message Routing
 Message Enhancement
 Reliability (Transactions)
 Security
 Scalability
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.23
Why choose Mule
 No prescribed message format
– XML, CSV, Binary, Streams, Record, Java Objects
– Mix and match
 Zero code intrusion
– Mule does not impose an API on service objects
– Objects are fully portable
 Existing objects can be managed
– POJOs, IoC Objects, EJB Session Beans, Remote Objects
– REST & Web Services
 Easy to test
– Mule can be run easily from a JUnit test case
– Framework provides a Test compatibility kit
– Scales down as well as up
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.24
Mule ESB Architecture
 Architecture is based on concepts discussed
in Enterprise Integration Patterns
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.25
Mule Components
 Endpoint
– Channel, MessageReceiver, Connector
 Transformer
– Message transformation / enhancement
 Router
– Message flow control (inbound/outbound)
 Service Component
– Your integration logic lives here
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.26
Mule Configuration
 Spring based
 mule-config.xml
(default)
 Multiple config files
using import
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.27
Daily Double
 Name two reasons to use Mule ESB
 Name one thing Mule ESB isn’t
 Name two Mule Components
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.28
Mule Examples (mini-demo)
 Download Mule
– http://www.mulesource.org/display/MULE/Download
 Configure the environment
– MULE_HOME, JAVA_HOME
 echo example
– options 1 & 3, show config
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.29
Mule Deployment
 Standalone
 Embed in servlet container
 JCA 1.5 resource adapter
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.30
Mule Deployment Topologies
 Enterprise Service Bus
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.31
Other Deployment Topologies
Mule also supports:
 pipeline
 peer network
 client/server
 hub-and-spoke, etc.
Combine them to make
an ESN
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.32
Enterprise Integration Patterns
 Message Filter
– Service component receives specific message types
 Message Translator
– Transformer: change format, tag names, etc.
 Content Enricher (Message Enhancement)
– add additional data to message
 Content-based Router
– Route message based on contained data
 Messaging Bridge
– Send message between different protocols or messaging
systems
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.33
Enterprise Integration Patterns (cont.)
 Content Filter
– Shrink message to fewer data items
 Polling Consumer
– File directory, email, FTP
 Scatter-Gather
– Send to multiple endpoints / aggregate replies
 Splitter
– Batches, Lists, Collections, etc.
 Wire Tap
– Inspect messages during flight (logging, monitoring, etc.)
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.34
Main Demo
 Set the stage [see diagrams]
– Describe scenario
– Configuration
 Show demo
 Show code
– Transformer(s)
– Service Component(s)
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.35
Main Demo - Scenario
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.36
Other MuleSource Goodies
 MuleForge
– Mule extensions, mostly provided by community
 Mule IDE, modules, tools, transports, etc.
 Mule Galaxy™
– SOA governance platform with an integrated
registry/repository
 Mule ESB Enterprise
– Subscription based support that includes
 Mule HQ™: systems monitoring / management
 Premium connectors (e.g. IBM Websphere MQ)
 Online knowledgebase & support links
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.37
The Bus
“The bus came by and I
got on, that's when it all
began...”
-- "The Other One" by
the Grateful Dead
So, get on the bus!
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.38
Audience Poll
 How many of you…
– learned something about Mule ESB?
– learned something you didn’t know about
integration patterns?
– had a bit of fun?
– will think more about how to be lazy?
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.39
Summary
 Integration Projects
 What Mule ESB is (and isn’t)
 Mule Architecture, Components, Deployment
 Enterprise Integration Patterns
 Easy to implement integration scenarios
 Plan to be lazy :-)
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.40
Double Jeopardy
 Send me a use-case for Mule ESB within your
organization using the contact form on the RSI
website (www.rich-software.com/main/contact)
 Put “Mule ESB use-case” in the subject
 The use-case must be received within 48 hours of
this talk to be eligible for a prize
 I will buy two lucky people a free lunch that includes
up to two hours of free business analysis on your
use-case and/or mentoring on Mule ESB. And, you
will receive one of the Manning books!
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.41
Resources
 Mule ESB:
– http://www.mulesource.org (Community)
– http://www.mulesource.com (Enterprise)
 Open Source ESBs In Action
– http://www.esbinaction.com
 Enterprise Integration Patterns
– http://www.enterpriseintegrationpatterns.com
 Mule In Action (July 2009)
– http://www.manning.com/dossot
1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.42
Thank you!
Questions?

More Related Content

What's hot

Vm component in mule demo
Vm component in mule demoVm component in mule demo
Vm component in mule demoSudha Ch
 
Mule concepts
Mule conceptsMule concepts
Mule conceptsSindhu VL
 
Create Account in Salesforce using Mule ESB
Create Account in Salesforce using Mule ESBCreate Account in Salesforce using Mule ESB
Create Account in Salesforce using Mule ESBSanjeet Pandey
 
Flowvar and Sessionvar in Mule
Flowvar and Sessionvar in MuleFlowvar and Sessionvar in Mule
Flowvar and Sessionvar in MuleChristian Hipolito
 
Send email attachment using smtp in mule esb
Send email attachment using smtp in mule esbSend email attachment using smtp in mule esb
Send email attachment using smtp in mule esbSreekanth Kondapalli
 
Mule esb parts
Mule esb partsMule esb parts
Mule esb partsSindhu VL
 
Integration with Microsoft Azure using Mule ESB
Integration with Microsoft Azure using Mule ESBIntegration with Microsoft Azure using Mule ESB
Integration with Microsoft Azure using Mule ESBSanjeet Pandey
 
Mule ESB - Mock Salesforce Interface
Mule ESB - Mock Salesforce InterfaceMule ESB - Mock Salesforce Interface
Mule ESB - Mock Salesforce Interfacekrishananth
 
Mule esb made system integration easy
Mule esb made system integration easyMule esb made system integration easy
Mule esb made system integration easySudha Ch
 
Introduction To Mule
Introduction To MuleIntroduction To Mule
Introduction To MuleRoy Prins
 
Database component in mule
Database component in muleDatabase component in mule
Database component in muleRajkattamuri
 

What's hot (14)

Vm component in mule demo
Vm component in mule demoVm component in mule demo
Vm component in mule demo
 
Mule concepts
Mule conceptsMule concepts
Mule concepts
 
Webservice vm in mule
Webservice vm in muleWebservice vm in mule
Webservice vm in mule
 
Mule soa
Mule soaMule soa
Mule soa
 
Mule esb
Mule esbMule esb
Mule esb
 
Create Account in Salesforce using Mule ESB
Create Account in Salesforce using Mule ESBCreate Account in Salesforce using Mule ESB
Create Account in Salesforce using Mule ESB
 
Flowvar and Sessionvar in Mule
Flowvar and Sessionvar in MuleFlowvar and Sessionvar in Mule
Flowvar and Sessionvar in Mule
 
Send email attachment using smtp in mule esb
Send email attachment using smtp in mule esbSend email attachment using smtp in mule esb
Send email attachment using smtp in mule esb
 
Mule esb parts
Mule esb partsMule esb parts
Mule esb parts
 
Integration with Microsoft Azure using Mule ESB
Integration with Microsoft Azure using Mule ESBIntegration with Microsoft Azure using Mule ESB
Integration with Microsoft Azure using Mule ESB
 
Mule ESB - Mock Salesforce Interface
Mule ESB - Mock Salesforce InterfaceMule ESB - Mock Salesforce Interface
Mule ESB - Mock Salesforce Interface
 
Mule esb made system integration easy
Mule esb made system integration easyMule esb made system integration easy
Mule esb made system integration easy
 
Introduction To Mule
Introduction To MuleIntroduction To Mule
Introduction To Mule
 
Database component in mule
Database component in muleDatabase component in mule
Database component in mule
 

Viewers also liked

Mule testing
Mule   testingMule   testing
Mule testingSindhu VL
 
Mule Database component
Mule Database component Mule Database component
Mule Database component AbdulImrankhan7
 
Mule legacy modernization example
Mule legacy modernization exampleMule legacy modernization example
Mule legacy modernization exampleD.Rajesh Kumar
 
Mule Message Chunk Aggregator
Mule Message Chunk AggregatorMule Message Chunk Aggregator
Mule Message Chunk AggregatorAnkush Sharma
 
Anypoint data gateway
Anypoint data gatewayAnypoint data gateway
Anypoint data gatewayAnand kalla
 
Introduction testingmule
Introduction testingmuleIntroduction testingmule
Introduction testingmuleSrikrishna k
 
Java useful in Mule
Java useful in MuleJava useful in Mule
Java useful in MuleShahid Shaik
 
Mule data integration
Mule data integrationMule data integration
Mule data integrationkeshav Naidu
 
MuleSoft ESB Sending email using hmailserver
MuleSoft ESB Sending email using hmailserverMuleSoft ESB Sending email using hmailserver
MuleSoft ESB Sending email using hmailserverakashdprajapati
 
Mule filtering messages
Mule filtering messagesMule filtering messages
Mule filtering messagesNaresh Naidu
 
Mule with rabbit mq
Mule with rabbit mqMule with rabbit mq
Mule with rabbit mqHasan Syed
 
Mule concepts filters scopes_routers
Mule concepts filters scopes_routersMule concepts filters scopes_routers
Mule concepts filters scopes_routerskunal vishe
 
File connector mule
File connector   muleFile connector   mule
File connector muleSindhu VL
 
Mule connector for ibm® as400
Mule connector for ibm® as400Mule connector for ibm® as400
Mule connector for ibm® as400D.Rajesh Kumar
 
Mule esb for beginners
Mule esb for beginnersMule esb for beginners
Mule esb for beginnersSindhu VL
 
Mule Script Transformer
Mule Script TransformerMule Script Transformer
Mule Script TransformerAnkush Sharma
 
Anypoint connector dev kit
Anypoint connector dev kitAnypoint connector dev kit
Anypoint connector dev kitD.Rajesh Kumar
 
Mule routing messages
Mule routing messagesMule routing messages
Mule routing messagesveena naresh
 

Viewers also liked (20)

Mule testing
Mule   testingMule   testing
Mule testing
 
Mule Database component
Mule Database component Mule Database component
Mule Database component
 
Mule legacy modernization example
Mule legacy modernization exampleMule legacy modernization example
Mule legacy modernization example
 
Mule Message Chunk Aggregator
Mule Message Chunk AggregatorMule Message Chunk Aggregator
Mule Message Chunk Aggregator
 
Anypoint data gateway
Anypoint data gatewayAnypoint data gateway
Anypoint data gateway
 
Introduction testingmule
Introduction testingmuleIntroduction testingmule
Introduction testingmule
 
Java useful in Mule
Java useful in MuleJava useful in Mule
Java useful in Mule
 
Mule data integration
Mule data integrationMule data integration
Mule data integration
 
MuleSoft ESB Sending email using hmailserver
MuleSoft ESB Sending email using hmailserverMuleSoft ESB Sending email using hmailserver
MuleSoft ESB Sending email using hmailserver
 
Mule filtering messages
Mule filtering messagesMule filtering messages
Mule filtering messages
 
Mule with rabbit mq
Mule with rabbit mqMule with rabbit mq
Mule with rabbit mq
 
Soavssaas
SoavssaasSoavssaas
Soavssaas
 
Mule concepts filters scopes_routers
Mule concepts filters scopes_routersMule concepts filters scopes_routers
Mule concepts filters scopes_routers
 
File connector mule
File connector   muleFile connector   mule
File connector mule
 
Xslt in mule
Xslt in muleXslt in mule
Xslt in mule
 
Mule connector for ibm® as400
Mule connector for ibm® as400Mule connector for ibm® as400
Mule connector for ibm® as400
 
Mule esb for beginners
Mule esb for beginnersMule esb for beginners
Mule esb for beginners
 
Mule Script Transformer
Mule Script TransformerMule Script Transformer
Mule Script Transformer
 
Anypoint connector dev kit
Anypoint connector dev kitAnypoint connector dev kit
Anypoint connector dev kit
 
Mule routing messages
Mule routing messagesMule routing messages
Mule routing messages
 

Similar to Mule Integration Simplified

Mule ESB - Integration Simplified
Mule ESB - Integration SimplifiedMule ESB - Integration Simplified
Mule ESB - Integration SimplifiedRich Software
 
Mule : Building Blocks for Microservices
Mule : Building Blocks for MicroservicesMule : Building Blocks for Microservices
Mule : Building Blocks for MicroservicesAnirudh Pandit
 
ESB and Mule ESB solution
ESB and Mule ESB solutionESB and Mule ESB solution
ESB and Mule ESB solutionSwati Bansal
 
SAP Integration: Best Practices | MuleSoft
SAP Integration: Best Practices | MuleSoftSAP Integration: Best Practices | MuleSoft
SAP Integration: Best Practices | MuleSoftMuleSoft
 
Mule Sap Integration
Mule Sap IntegrationMule Sap Integration
Mule Sap IntegrationBui Kiet
 
São Paulo MuleSoft Meetup #5 - Runtime Fabric
São Paulo MuleSoft Meetup #5 - Runtime FabricSão Paulo MuleSoft Meetup #5 - Runtime Fabric
São Paulo MuleSoft Meetup #5 - Runtime FabricGuilherme Pereira Silva
 
Sulu @ Symfony User Group Munich
Sulu @ Symfony User Group MunichSulu @ Symfony User Group Munich
Sulu @ Symfony User Group MunichSulu
 
MuleSoft Meetup Singapore - Reliable Messaging & RTF Operations
MuleSoft Meetup Singapore - Reliable Messaging & RTF OperationsMuleSoft Meetup Singapore - Reliable Messaging & RTF Operations
MuleSoft Meetup Singapore - Reliable Messaging & RTF OperationsJulian Douch
 
Why Mulesoft ?
Why Mulesoft ?Why Mulesoft ?
Why Mulesoft ?Bui Kiet
 
The forgotten route: Making Apache Camel work for you
The forgotten route: Making Apache Camel work for youThe forgotten route: Making Apache Camel work for you
The forgotten route: Making Apache Camel work for youRogue Wave Software
 
USolutions - SOA and the Cloud
USolutions - SOA and the CloudUSolutions - SOA and the Cloud
USolutions - SOA and the Cloudusolutions
 
Raj Anthony Carrato R E S T Patterns
Raj    Anthony  Carrato    R E S T PatternsRaj    Anthony  Carrato    R E S T Patterns
Raj Anthony Carrato R E S T PatternsSOA Symposium
 
Designing and building Mule applications
Designing and building Mule applicationsDesigning and building Mule applications
Designing and building Mule applicationsMuleSoft
 
Mule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh gMule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh gMuthu Guru Rathinesh G
 
Mulesoft meetup 9thmay Thiruvananthapuram
Mulesoft meetup 9thmay ThiruvananthapuramMulesoft meetup 9thmay Thiruvananthapuram
Mulesoft meetup 9thmay ThiruvananthapuramAnurag Dwivedi
 

Similar to Mule Integration Simplified (20)

Mule ESB - Integration Simplified
Mule ESB - Integration SimplifiedMule ESB - Integration Simplified
Mule ESB - Integration Simplified
 
Mule : Building Blocks for Microservices
Mule : Building Blocks for MicroservicesMule : Building Blocks for Microservices
Mule : Building Blocks for Microservices
 
ESB and Mule ESB solution
ESB and Mule ESB solutionESB and Mule ESB solution
ESB and Mule ESB solution
 
SAP Integration: Best Practices | MuleSoft
SAP Integration: Best Practices | MuleSoftSAP Integration: Best Practices | MuleSoft
SAP Integration: Best Practices | MuleSoft
 
Mule Sap Integration
Mule Sap IntegrationMule Sap Integration
Mule Sap Integration
 
Soa
SoaSoa
Soa
 
São Paulo MuleSoft Meetup #5 - Runtime Fabric
São Paulo MuleSoft Meetup #5 - Runtime FabricSão Paulo MuleSoft Meetup #5 - Runtime Fabric
São Paulo MuleSoft Meetup #5 - Runtime Fabric
 
Sulu @ Symfony User Group Munich
Sulu @ Symfony User Group MunichSulu @ Symfony User Group Munich
Sulu @ Symfony User Group Munich
 
MuleSoft Meetup Singapore - Reliable Messaging & RTF Operations
MuleSoft Meetup Singapore - Reliable Messaging & RTF OperationsMuleSoft Meetup Singapore - Reliable Messaging & RTF Operations
MuleSoft Meetup Singapore - Reliable Messaging & RTF Operations
 
Why Mulesoft ?
Why Mulesoft ?Why Mulesoft ?
Why Mulesoft ?
 
Mule esb presentation
Mule esb presentationMule esb presentation
Mule esb presentation
 
Muleesb
MuleesbMuleesb
Muleesb
 
The forgotten route: Making Apache Camel work for you
The forgotten route: Making Apache Camel work for youThe forgotten route: Making Apache Camel work for you
The forgotten route: Making Apache Camel work for you
 
USolutions - SOA and the Cloud
USolutions - SOA and the CloudUSolutions - SOA and the Cloud
USolutions - SOA and the Cloud
 
Raj Anthony Carrato R E S T Patterns
Raj    Anthony  Carrato    R E S T PatternsRaj    Anthony  Carrato    R E S T Patterns
Raj Anthony Carrato R E S T Patterns
 
Designing and building Mule applications
Designing and building Mule applicationsDesigning and building Mule applications
Designing and building Mule applications
 
Mule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh gMule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh g
 
Cracow MuleSoft Meetup #1
Cracow MuleSoft Meetup #1Cracow MuleSoft Meetup #1
Cracow MuleSoft Meetup #1
 
Mulesoft meetup 9thmay Thiruvananthapuram
Mulesoft meetup 9thmay ThiruvananthapuramMulesoft meetup 9thmay Thiruvananthapuram
Mulesoft meetup 9thmay Thiruvananthapuram
 
02 basics
02 basics02 basics
02 basics
 

More from Bui Kiet

Asynchronous javascript and xml
Asynchronous javascript and xmlAsynchronous javascript and xml
Asynchronous javascript and xmlBui Kiet
 
Jquery tutorial
Jquery tutorialJquery tutorial
Jquery tutorialBui Kiet
 
Real time data integration best practices and architecture
Real time data integration best practices and architectureReal time data integration best practices and architecture
Real time data integration best practices and architectureBui Kiet
 
Jms introduction
Jms introductionJms introduction
Jms introductionBui Kiet
 
Wso2 in action
Wso2 in actionWso2 in action
Wso2 in actionBui Kiet
 
Easy javascript
Easy javascriptEasy javascript
Easy javascriptBui Kiet
 
JavaScript Tutorial
JavaScript  TutorialJavaScript  Tutorial
JavaScript TutorialBui Kiet
 
Java basic tutorial
Java basic tutorialJava basic tutorial
Java basic tutorialBui Kiet
 
Java Tutorial | My Heart
Java Tutorial | My HeartJava Tutorial | My Heart
Java Tutorial | My HeartBui Kiet
 
Technology presentations
Technology presentationsTechnology presentations
Technology presentationsBui Kiet
 
Soap In Mule
Soap In MuleSoap In Mule
Soap In MuleBui Kiet
 
Mule Esb Batch process
Mule Esb Batch processMule Esb Batch process
Mule Esb Batch processBui Kiet
 
Mule solutions for data integration
Mule solutions for data integrationMule solutions for data integration
Mule solutions for data integrationBui Kiet
 
Mulesoft corporate template final
Mulesoft corporate template  final Mulesoft corporate template  final
Mulesoft corporate template final Bui Kiet
 
Biztalk vs mulesoft
Biztalk vs mulesoft Biztalk vs mulesoft
Biztalk vs mulesoft Bui Kiet
 
Enjoy Munit with Mule
Enjoy Munit with MuleEnjoy Munit with Mule
Enjoy Munit with MuleBui Kiet
 
.Net architecture with mule soft
.Net architecture with mule soft.Net architecture with mule soft
.Net architecture with mule softBui Kiet
 
Integration platform as a service
Integration platform as a serviceIntegration platform as a service
Integration platform as a serviceBui Kiet
 
Becoming a Connected Insurer With API-led Connectivity
Becoming a Connected Insurer With API-led ConnectivityBecoming a Connected Insurer With API-led Connectivity
Becoming a Connected Insurer With API-led ConnectivityBui Kiet
 

More from Bui Kiet (20)

Asynchronous javascript and xml
Asynchronous javascript and xmlAsynchronous javascript and xml
Asynchronous javascript and xml
 
Jquery tutorial
Jquery tutorialJquery tutorial
Jquery tutorial
 
Real time data integration best practices and architecture
Real time data integration best practices and architectureReal time data integration best practices and architecture
Real time data integration best practices and architecture
 
Jms introduction
Jms introductionJms introduction
Jms introduction
 
Wso2 in action
Wso2 in actionWso2 in action
Wso2 in action
 
Easy javascript
Easy javascriptEasy javascript
Easy javascript
 
JavaScript Tutorial
JavaScript  TutorialJavaScript  Tutorial
JavaScript Tutorial
 
Java basic tutorial
Java basic tutorialJava basic tutorial
Java basic tutorial
 
Java Tutorial | My Heart
Java Tutorial | My HeartJava Tutorial | My Heart
Java Tutorial | My Heart
 
Technology presentations
Technology presentationsTechnology presentations
Technology presentations
 
Soap In Mule
Soap In MuleSoap In Mule
Soap In Mule
 
Mule Esb Batch process
Mule Esb Batch processMule Esb Batch process
Mule Esb Batch process
 
Mule solutions for data integration
Mule solutions for data integrationMule solutions for data integration
Mule solutions for data integration
 
Mulesoft corporate template final
Mulesoft corporate template  final Mulesoft corporate template  final
Mulesoft corporate template final
 
Biztalk vs mulesoft
Biztalk vs mulesoft Biztalk vs mulesoft
Biztalk vs mulesoft
 
Mule ESB
Mule ESBMule ESB
Mule ESB
 
Enjoy Munit with Mule
Enjoy Munit with MuleEnjoy Munit with Mule
Enjoy Munit with Mule
 
.Net architecture with mule soft
.Net architecture with mule soft.Net architecture with mule soft
.Net architecture with mule soft
 
Integration platform as a service
Integration platform as a serviceIntegration platform as a service
Integration platform as a service
 
Becoming a Connected Insurer With API-led Connectivity
Becoming a Connected Insurer With API-led ConnectivityBecoming a Connected Insurer With API-led Connectivity
Becoming a Connected Insurer With API-led Connectivity
 

Recently uploaded

Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 

Recently uploaded (20)

Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 

Mule Integration Simplified

  • 1. Mule ESB® Integration Simplified Rich Remington rremington@Rich-Software.com Kiet Bui
  • 2. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.2 Topics  Integration, SOA, and ESB  What Mule ESB is (and isn’t)  Mule Architecture & Components  Configuration & Deployment  Enterprise Integration Patterns  Main Demo  Wrap-up & questions
  • 3. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.3 Goals  Educate 1..* people about Mule ESB & how to simplify integration projects  Give back to an awesome community  Have a bit of fun  Confirm “laziness” is a good thing! – At least some of the time…  Convince you it’s safe, easy, and fun, to “get on the bus”
  • 4. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.4 Background  Who am I? – Mathematician wannabe turned software guy – A bit lazy  The bucket of water story – Moral: don’t work harder than you have to - it’s okay to be lazy ;-)
  • 5. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.5  Reduce – Code complexity & bloat  Refactor – Move code to its proper place  Transformation, Routing, Service Component  Reuse – Plan ahead for service/component reuse – Use pre-built components & solutions 3 R’s - Plan to be Lazy :-)
  • 6. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.6 Integration Projects  Why we integrate – Users don't care where business functions and information reside – We don't always own or control all the pieces  intranet & external partners – Cheaper than building new solutions from scratch – Users want access to information from various devices - browsers, mobile phone, handhelds, ...
  • 7. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.7 Integration Projects  How we integrate – Set up meetings with business domain experts – Identify systems and processes – More meetings… – Map data flows then model  Patterns are extremely helpful – Yet more meetings… – Define services & message formats – Start coding away…  But, then what happens?
  • 8. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.8 Integration Projects  Three things in life are certain: – Death – Taxes – Requirements will change often!  Plan for change – Design & build service/object interfaces for reuse – Take advantage of loose coupling – Switch implementations or protocols as needed over time, but not the interface
  • 9. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.9 Integration Checklist Service Interfaces Mule Topology Model Event Flows Fault Handling Data Transformations Test Use-cases Service Implementation Endpoint QoS, Security Functional Testing Implementation Identify Processes and Systems Create an Integration Profile Service Identification Map Data Flows Performance Requirements Security Redundancy Requirements QoS Requirements Define Message Formats Planning
  • 10. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.10 Integration Approaches/Technologies  Custom, point-to-point solutions – Information silos live on  Service Oriented Architecture (SOA) – Enables loose coupling of services that are OS & programming language independent – Web services (SOAP, REST), RPC, CORBA, etc.  Enterprise Service Bus (ESB) – Helps orchestrate & manage the chaos – Good place to centralize general services – Encourages best practices
  • 11. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.11 The Bus “There are going to be times when we can't wait for somebody. Now, you're either on the bus or off the bus. If you're on the bus, and you get left behind, then you'll find it again. If you're off the bus in the first place — then it won't make a damn.” -- The Electric Kool-Aid Acid Test (1968)
  • 12. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.12 Daily Double  What are two of the 3 R’s?  What was the moral of the “bucket of water” story?  Name the Integration Approach I’m suggesting you use
  • 13. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.13 Audience Poll  How many of you… – Need to integrate – Are using point-to-point integration solutions – Are doing SOA (SOAP, REST, RPC, …) – Not doing SOA, but planning to – Are using an ESB – Not doing ESB, but planning to
  • 14. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.14 Why use an ESB  Integration Styles – Batch – File Transfer – Shared Database – Request/Reply – Messaging  Synchronous  Asynchronous  ESB Advantages – Supports all styles – Bridges legacy systems – Modular architecture – Simple and flexible – Easy to test and maintain – Scalable – Can be a step towards SOA
  • 15. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.15 8-APR-2009 All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved. Why use an ESB (before)
  • 16. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.16 8-APR-2009 All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved. Why use an ESB (after)
  • 17. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.17 What is Mule ESB? “Mule is a lightweight integration platform and service container that allows you to quickly and easily connect your applications together. Mule provides a robust, secure and scalable platform to build enterprise applications offering an array of transports such as JMS, HTTP, Email, FTP, JDBC and many more. It also offers a rich set of features for web services, message routing, mediation, transformation and transaction management. Designed around the ESB (Enterprise Service Bus) concept.” -- www.mulesource.org
  • 18. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.18 What is Mule ESB? “Mule is a lightweight integration platform and service container that allows you to quickly and easily connect your applications together. Mule provides a robust, secure and scalable platform to build enterprise applications offering an array of transports such as JMS, HTTP, Email, FTP, JDBC and many more. It also offers a rich set of features for web services, message routing, mediation, transformation and transaction management. Designed around the ESB (Enterprise Service Bus) concept.” -- www.mulesource.org
  • 19. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.19 All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved. What is Mule ESB? Service creation and hosting • Expose transport end-points, EJBs, Spring beans, and POJOs as modular and reusable services • Host services as a lightweight service container Service mediation • Separate business logic from messaging • Shield service components from message formats and protocols • Enable location-independent service calls Message routing • Route messages based on content and complex rules • Filter, aggregate and re-sequence in-bound messages Data transformation • Exchange data across applications with varying data formats • Transform data as needed, based on need • Format messages across heterogeneous transport protocols
  • 20. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.20 All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved. Mule: Lightweight and Adaptive Adaptive integration • Standards-based and vendor-neutral • Seamless integration with existing infrastructure • Plug-in architecture allows for building block approach • Use with any application server or standalone Development simplicity • Simplifi ed programming model • Ease of use through confi guration and control • Rapid development and deployment through code reuse Open source advantage • No expensive up-front license commitments • Access to source code allows customization and lowers risk • Vibrant developer community delivering best practices and modules
  • 21. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.21 What Mule ESB isn’t  It does not place restrictions on your environment  It is not message queuing, it uses other (JMS capable) products – And, it does not require message queues  It is not complex  It does not need to be “the grand master of all integration endpoints across the enterprise” – Think big, start small – It plays nicely with other ESBs
  • 22. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.22 Why use Mule ESB  Decouples Business Logic  Location Transparency  Transport Protocol Conversion  Message Transformation  Message Routing  Message Enhancement  Reliability (Transactions)  Security  Scalability
  • 23. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.23 Why choose Mule  No prescribed message format – XML, CSV, Binary, Streams, Record, Java Objects – Mix and match  Zero code intrusion – Mule does not impose an API on service objects – Objects are fully portable  Existing objects can be managed – POJOs, IoC Objects, EJB Session Beans, Remote Objects – REST & Web Services  Easy to test – Mule can be run easily from a JUnit test case – Framework provides a Test compatibility kit – Scales down as well as up
  • 24. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.24 Mule ESB Architecture  Architecture is based on concepts discussed in Enterprise Integration Patterns
  • 25. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.25 Mule Components  Endpoint – Channel, MessageReceiver, Connector  Transformer – Message transformation / enhancement  Router – Message flow control (inbound/outbound)  Service Component – Your integration logic lives here
  • 26. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.26 Mule Configuration  Spring based  mule-config.xml (default)  Multiple config files using import
  • 27. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.27 Daily Double  Name two reasons to use Mule ESB  Name one thing Mule ESB isn’t  Name two Mule Components
  • 28. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.28 Mule Examples (mini-demo)  Download Mule – http://www.mulesource.org/display/MULE/Download  Configure the environment – MULE_HOME, JAVA_HOME  echo example – options 1 & 3, show config
  • 29. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.29 Mule Deployment  Standalone  Embed in servlet container  JCA 1.5 resource adapter
  • 30. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.30 Mule Deployment Topologies  Enterprise Service Bus
  • 31. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.31 Other Deployment Topologies Mule also supports:  pipeline  peer network  client/server  hub-and-spoke, etc. Combine them to make an ESN
  • 32. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.32 Enterprise Integration Patterns  Message Filter – Service component receives specific message types  Message Translator – Transformer: change format, tag names, etc.  Content Enricher (Message Enhancement) – add additional data to message  Content-based Router – Route message based on contained data  Messaging Bridge – Send message between different protocols or messaging systems
  • 33. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.33 Enterprise Integration Patterns (cont.)  Content Filter – Shrink message to fewer data items  Polling Consumer – File directory, email, FTP  Scatter-Gather – Send to multiple endpoints / aggregate replies  Splitter – Batches, Lists, Collections, etc.  Wire Tap – Inspect messages during flight (logging, monitoring, etc.)
  • 34. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.34 Main Demo  Set the stage [see diagrams] – Describe scenario – Configuration  Show demo  Show code – Transformer(s) – Service Component(s)
  • 35. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.35 Main Demo - Scenario
  • 36. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.36 Other MuleSource Goodies  MuleForge – Mule extensions, mostly provided by community  Mule IDE, modules, tools, transports, etc.  Mule Galaxy™ – SOA governance platform with an integrated registry/repository  Mule ESB Enterprise – Subscription based support that includes  Mule HQ™: systems monitoring / management  Premium connectors (e.g. IBM Websphere MQ)  Online knowledgebase & support links
  • 37. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.37 The Bus “The bus came by and I got on, that's when it all began...” -- "The Other One" by the Grateful Dead So, get on the bus!
  • 38. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.38 Audience Poll  How many of you… – learned something about Mule ESB? – learned something you didn’t know about integration patterns? – had a bit of fun? – will think more about how to be lazy?
  • 39. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.39 Summary  Integration Projects  What Mule ESB is (and isn’t)  Mule Architecture, Components, Deployment  Enterprise Integration Patterns  Easy to implement integration scenarios  Plan to be lazy :-)
  • 40. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.40 Double Jeopardy  Send me a use-case for Mule ESB within your organization using the contact form on the RSI website (www.rich-software.com/main/contact)  Put “Mule ESB use-case” in the subject  The use-case must be received within 48 hours of this talk to be eligible for a prize  I will buy two lucky people a free lunch that includes up to two hours of free business analysis on your use-case and/or mentoring on Mule ESB. And, you will receive one of the Manning books!
  • 41. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.41 Resources  Mule ESB: – http://www.mulesource.org (Community) – http://www.mulesource.com (Enterprise)  Open Source ESBs In Action – http://www.esbinaction.com  Enterprise Integration Patterns – http://www.enterpriseintegrationpatterns.com  Mule In Action (July 2009) – http://www.manning.com/dossot
  • 42. 1-SEP-2009All content copyright © 2009, Rich Software Inc; portions copyright © 2009, MuleSource Inc. All rights reserved.42 Thank you! Questions?