SlideShare a Scribd company logo
Mule ESB
Purpose and Objectives
Mule – Brief Introduction
Special Features
Messaging Framework
Architecture
Logical Data Flow
Summery
Mule – Brief Introduction
 Mule is a lightweight Java-based messaging framework that allows you to quickly
and easily connect your applications and enable them to exchange data.
 Mule uses a service-oriented architecture (SOA), enabling easy integration of your
existing systems. Regardless of the different technologies the applications use,
including JMS, Web Services, JDBC, HTTP, and more, Mule seamlessly handles
interactions among them all. The Mule framework is highly scalable, allowing you
to start small and connect more applications over time. Mule manages all the
interactions between applications and components transparently, regardless of
whether they exist in the same virtual machine or over the Internet, and
regardless of the underlying transport protocol used.
 Mule is based on ideas from Enterprise Service Bus (ESB) architectures. The key
advantage of an ESB is that it allows different applications to communicate with
each other by acting as a transit system for carrying data between applications
within your intranet or across the Internet. There are currently several commercial
ESB implementations on the market. However, many of these provide limited
functionality or are built on top of an existing application server or messaging
server, locking you into that specific vendor. Mule is vendor-neutral, so different
vendor implementations can plug in to it. You are never locked in to a specific
vendor when you use Mule.
Special Features
 Mule components can be any type you want. You can easily integrate anything
from a "plain old Java object" (POJO) to a component from another framework.
 Mule and the ESB model enable significant component reuse. Unlike other
frameworks, Mule allows you to use your existing components without any
changes. Components do not require any Mule-specific code to run in Mule,
and there is no programmatic API required. The business logic is kept
completely separate from the messaging logic.
 Messages can be in any format from SOAP to binary image files. Mule does not
force any design constraints on the architect, such as XML messaging or WSDL
service contracts.
 You can deploy Mule in a variety of topologies, not just ESB. Because it is
lightweight and embeddable, Mule can dramatically decrease time to market
and increases productivity for projects to provide secure, scalable applications
that are adaptive to change and can scale up or down as needed.
Messaging Framework
 The advantage of networking your applications is that one application can send data to another
application. However, many applications don't have the ability to read or process data coming
from another application. Mule solves this problem by providing a messaging framework that
reads, transforms, and sends data as messages between applications. A message is simply a packet
of data that can be handled and sent between applications on a specific channel (also called a
queue).
 At the simplest level, when you connect applications to Mule, it reads data from one application,
transforms it as needed so it can be read by the target application, and sends it to that application.
This allows you to integrate all types of applications, even those that were not built to be
integrated.
 Mule is a messaging framework based on ideas from Enterprise Service Bus (ESB) architectures.
The key advantage of an ESB is that it allows different applications to communicate with each other
by acting as a transit system for carrying data between applications within your intranet or across
the Internet. The heart of the system is the message bus, which routes messages between
applications.
 One difference between Mule and a traditional ESB is that Mule only converts data as needed.
With a typical ESB, you have to create an adapter for every application you connect to the bus and
convert the application’s data into a single common messaging format. The development of these
adapters and the time required to process every message requires a lot of time and effort. Mule
eliminates the need for a single message format. The information is sent on any communication
channel, such as HTTP or JMS, and is translated only as needed along the way. Therefore, Mule
increases performance and reduces development time over a traditional ESB.
Architecture
 Mule is based on the concept of a service-oriented architecture (SOA). The SOA approach to
development allows IT organizations to create applications by bringing together components
of application functionality, or services. Services are discrete sets of functionality that are
completely separate from each other but can work together on the same objects. For
example, if you need to process invoices, you might have one service that merges customer
data from a database into the invoice and another service that checks the inventory database
to see if the items on the invoice are in stock.
 Because each service stands alone, services can be used as building blocks for multiple
processes and do not have to be recreated for each type of process or message. For example,
the service that merges customer data onto the invoice could also be used to merge customer
data onto statements, letters, or other documents. This modular approach allows you to
create functionality once and re-use it as many times as needed, streamlining development.
 Using SOA, businesses can realize dramatic savings on development costs and can rapidly
adapt to changing business conditions by reusing and reconfiguring existing services in
developing new applications. SOA also enables better integration of enterprise IT resources,
including previously isolated application silos and legacy systems. Mule fully supports the SOA
approach and orchestrates communication among the services, allowing you to easily tie all
these applications together.
Logical Data Flow
Logical Data Flow (Continue…)
1. The customer places an order on the company web site, and an invoice is created as an XML
form and submitted to http://myfirm.com/orders.
2. The HTTP transport receives the XML invoice and wraps it in a Mule message. The Customer
Data service’s inbound endpoint is set to http://myfirm.com/orders, and its inbound router
specifies that the message must contain a Java object, so the HTTP transport prepares to
transform the XML invoice and dispatch the message to the service.
3. The XML to Object transformer converts the XML invoice into a Java object. Note that the
next service and the final application also expect Java objects, so no further transformers are
used in this scenario.
4. The transport passes the message with its transformed payload to the Customer Data
service.
5. The Customer Data service component queries the master customer database to pull
additional data about the customer and updates the invoice with the data.
6. The HTTP transport uses the outbound router configuration to determine that it must now
dispatch the message to http://myfirm.com/verify.
7. The HTTP transport uses the inbound router configuration of the Inventory Verification
service to receive the message and pass it to the service component.
8. The service component updates the invoice with an ID code of the warehouse that has all
the items on the invoice in stock.
9. The outbound endpoint specifies a JMS address, so the JMS transport dispatches the
message to the order fulfillment application, which picks up orders on that address.
Summery
Mule provides a messaging framework that enables exchange of data among
applications. The application functionality is wrapped as a service, which includes a
service component (the business logic that processes the data), routers (which use
endpoints to specify where to send the message), and other configuration settings.
Transports carry the messages on different channels from service to service, and
transformers convert the messages and data as needed along the way.
Mule is not a replacement for existing application frameworks. Instead, Mule
leverages many open source projects such as Apache CXF, Spring, and ActiveMQ
and fills a void in enterprise Java development where an application requires
complex interactions with a variety of systems on a variety of platforms. Mule
makes light work of wiring systems together in a robust, decoupled environment
with little to no code and provides the necessary support to route, transport, and
transform data to and from these systems.
Summery
Mule provides a messaging framework that enables exchange of data among
applications. The application functionality is wrapped as a service, which includes a
service component (the business logic that processes the data), routers (which use
endpoints to specify where to send the message), and other configuration settings.
Transports carry the messages on different channels from service to service, and
transformers convert the messages and data as needed along the way.
Mule is not a replacement for existing application frameworks. Instead, Mule
leverages many open source projects such as Apache CXF, Spring, and ActiveMQ
and fills a void in enterprise Java development where an application requires
complex interactions with a variety of systems on a variety of platforms. Mule
makes light work of wiring systems together in a robust, decoupled environment
with little to no code and provides the necessary support to route, transport, and
transform data to and from these systems.

More Related Content

What's hot

Mule architecture
Mule architectureMule architecture
Mule architecture
Phaniu
 
Anypoint data gateway
Anypoint data gatewayAnypoint data gateway
Anypoint data gateway
Praneethchampion
 
Mule architecture
Mule   architectureMule   architecture
Mule architecture
D.Rajesh Kumar
 
Mule ESB
Mule ESBMule ESB
Mule ESB
Bui Kiet
 
Mule batch processing
Mule batch processingMule batch processing
Mule batch processing
Praneethchampion
 
Mule oracle connectors
Mule oracle connectorsMule oracle connectors
Mule oracle connectors
Praneethchampion
 
Mule workday-connectors
Mule  workday-connectorsMule  workday-connectors
Mule workday-connectors
D.Rajesh Kumar
 
Architecture of mule
Architecture of muleArchitecture of mule
Architecture of mule
Vamsi Krishna
 
MuleEsb Complete integration and middleware solution
MuleEsb Complete integration and middleware solutionMuleEsb Complete integration and middleware solution
MuleEsb Complete integration and middleware solution
Rajkattamuri
 
Mule batch processing
Mule  batch processingMule  batch processing
Mule batch processing
D.Rajesh Kumar
 
Why Mulesoft ?
Why Mulesoft ?Why Mulesoft ?
Why Mulesoft ?
Bui Kiet
 
Cloud hub architecture
Cloud hub architectureCloud hub architecture
Cloud hub architecture
Shanky Gupta
 
Mule architecture
Mule architectureMule architecture
Mule architecture
D.Rajesh Kumar
 
Mule connectors
Mule  connectorsMule  connectors
Mule connectors
charan teja R
 
Mule connectors
Mule  connectorsMule  connectors
Mule connectors
D.Rajesh Kumar
 
Mule microsoft environment
Mule  microsoft environmentMule  microsoft environment
Mule microsoft environment
charan teja R
 
Mule -solutions for data integration
Mule -solutions for data integrationMule -solutions for data integration
Mule -solutions for data integration
D.Rajesh Kumar
 
Mule esb presentation
Mule esb presentationMule esb presentation
Mule esb presentation
Lakshmi Prasanna Mavillapalli
 

What's hot (18)

Mule architecture
Mule architectureMule architecture
Mule architecture
 
Anypoint data gateway
Anypoint data gatewayAnypoint data gateway
Anypoint data gateway
 
Mule architecture
Mule   architectureMule   architecture
Mule architecture
 
Mule ESB
Mule ESBMule ESB
Mule ESB
 
Mule batch processing
Mule batch processingMule batch processing
Mule batch processing
 
Mule oracle connectors
Mule oracle connectorsMule oracle connectors
Mule oracle connectors
 
Mule workday-connectors
Mule  workday-connectorsMule  workday-connectors
Mule workday-connectors
 
Architecture of mule
Architecture of muleArchitecture of mule
Architecture of mule
 
MuleEsb Complete integration and middleware solution
MuleEsb Complete integration and middleware solutionMuleEsb Complete integration and middleware solution
MuleEsb Complete integration and middleware solution
 
Mule batch processing
Mule  batch processingMule  batch processing
Mule batch processing
 
Why Mulesoft ?
Why Mulesoft ?Why Mulesoft ?
Why Mulesoft ?
 
Cloud hub architecture
Cloud hub architectureCloud hub architecture
Cloud hub architecture
 
Mule architecture
Mule architectureMule architecture
Mule architecture
 
Mule connectors
Mule  connectorsMule  connectors
Mule connectors
 
Mule connectors
Mule  connectorsMule  connectors
Mule connectors
 
Mule microsoft environment
Mule  microsoft environmentMule  microsoft environment
Mule microsoft environment
 
Mule -solutions for data integration
Mule -solutions for data integrationMule -solutions for data integration
Mule -solutions for data integration
 
Mule esb presentation
Mule esb presentationMule esb presentation
Mule esb presentation
 

Viewers also liked

Initialize database in Mule part2
Initialize database in Mule part2Initialize database in Mule part2
Initialize database in Mule part2
Anirban Sen Chowdhary
 
Mule technologies
Mule technologiesMule technologies
Mule technologies
D.Rajesh Kumar
 
Mule advanced
Mule advancedMule advanced
Mule advanced
D.Rajesh Kumar
 
Mule human resources connectors
Mule  human resources connectorsMule  human resources connectors
Mule human resources connectors
himajareddys
 
Mule esb introduction
Mule esb introductionMule esb introduction
Mule esb introduction
Mohammed625
 
Mule esb stripe
Mule esb stripeMule esb stripe
Mule esb stripe
javeed_mhd
 
Automatic documentation with mule
Automatic documentation with mule Automatic documentation with mule
Automatic documentation with mule
javeed_mhd
 
Mule B2B
Mule B2BMule B2B
Mule B2B
charan teja R
 
Mule with drools
Mule with droolsMule with drools
Mule with drools
F K
 
Dropbox connector Mule ESB Integration
Dropbox connector Mule ESB IntegrationDropbox connector Mule ESB Integration
Dropbox connector Mule ESB Integration
AnilKumar Etagowni
 
Mule esb
Mule esbMule esb
Mule esb
himajareddys
 
Mule architecture
Mule   architectureMule   architecture
Mule architecture
himajareddys
 
Mule marketing connectors
Mule  marketing connectorsMule  marketing connectors
Mule marketing connectors
himajareddys
 
Mule salesforce integration solutions
Mule  salesforce integration solutionsMule  salesforce integration solutions
Mule salesforce integration solutions
vishnukanthro45
 
Mule java part-3
Mule java part-3Mule java part-3
Mule java part-3
Karnam Karthik
 
Idempotent filter in Mule
Idempotent filter in MuleIdempotent filter in Mule
Idempotent filter in Mule
F K
 
Deploying and running in mule standalone
Deploying and running in mule standaloneDeploying and running in mule standalone
Deploying and running in mule standalone
Mohammed625
 
Mule security - pgp
Mule  security - pgpMule  security - pgp
Mule security - pgp
himajareddys
 
Mule esb
Mule esbMule esb
Mule esb
vishnukanthro45
 
Mule mule runtime engine
Mule  mule runtime engineMule  mule runtime engine
Mule mule runtime engine
himajareddys
 

Viewers also liked (20)

Initialize database in Mule part2
Initialize database in Mule part2Initialize database in Mule part2
Initialize database in Mule part2
 
Mule technologies
Mule technologiesMule technologies
Mule technologies
 
Mule advanced
Mule advancedMule advanced
Mule advanced
 
Mule human resources connectors
Mule  human resources connectorsMule  human resources connectors
Mule human resources connectors
 
Mule esb introduction
Mule esb introductionMule esb introduction
Mule esb introduction
 
Mule esb stripe
Mule esb stripeMule esb stripe
Mule esb stripe
 
Automatic documentation with mule
Automatic documentation with mule Automatic documentation with mule
Automatic documentation with mule
 
Mule B2B
Mule B2BMule B2B
Mule B2B
 
Mule with drools
Mule with droolsMule with drools
Mule with drools
 
Dropbox connector Mule ESB Integration
Dropbox connector Mule ESB IntegrationDropbox connector Mule ESB Integration
Dropbox connector Mule ESB Integration
 
Mule esb
Mule esbMule esb
Mule esb
 
Mule architecture
Mule   architectureMule   architecture
Mule architecture
 
Mule marketing connectors
Mule  marketing connectorsMule  marketing connectors
Mule marketing connectors
 
Mule salesforce integration solutions
Mule  salesforce integration solutionsMule  salesforce integration solutions
Mule salesforce integration solutions
 
Mule java part-3
Mule java part-3Mule java part-3
Mule java part-3
 
Idempotent filter in Mule
Idempotent filter in MuleIdempotent filter in Mule
Idempotent filter in Mule
 
Deploying and running in mule standalone
Deploying and running in mule standaloneDeploying and running in mule standalone
Deploying and running in mule standalone
 
Mule security - pgp
Mule  security - pgpMule  security - pgp
Mule security - pgp
 
Mule esb
Mule esbMule esb
Mule esb
 
Mule mule runtime engine
Mule  mule runtime engineMule  mule runtime engine
Mule mule runtime engine
 

Similar to Mule technology

Mule ESB
Mule ESBMule ESB
Mule ESBniravn
 
mule esb
mule esbmule esb
Mule esb
Mule esbMule esb
Mule esb
Ankush Sharma
 
Introduction to Mule ESB
Introduction to Mule ESBIntroduction to Mule ESB
Introduction to Mule ESB
Deepak Bisht
 
Mule introduction
Mule introductionMule introduction
Mule introduction
kiranvanga
 
Mule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh gMule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh g
Muthu Guru Rathinesh G
 
Mule fundamentals
Mule fundamentalsMule fundamentals
Mule fundamentals
prudhvivreddy
 
Mule in a nutshell
Mule in a nutshellMule in a nutshell
Mule in a nutshell
Ravinder Singh
 
Mule architecture
Mule architectureMule architecture
Mule architecture
irfan1008
 
Mule architecture
Mule architectureMule architecture
Mule architecture
princeirfancivil
 
Mule esb
Mule esbMule esb
Mule architecture
Mule architectureMule architecture
Mule architecture
Khasim Saheb
 
Mule architecture
Mule architectureMule architecture
Mule architecture
Anand kalla
 
Mule ESB
Mule ESBMule ESB
Mule ESB
chetan singhal
 
Mule esb overview
Mule esb overviewMule esb overview
Mule esb overview
Swami Satish
 
Mule esb-architecture
Mule esb-architectureMule esb-architecture
Mule esb-architecture
himajareddys
 
Mule esb presentation 2015
Mule esb presentation 2015Mule esb presentation 2015
Mule esb presentation 2015
Nagesh Penumarthy
 
Mule soft
Mule softMule soft
Mule execution units
Mule execution unitsMule execution units
Mule execution units
kiranvanga
 
Mule esb
Mule esbMule esb
Mule esb
Prabhat gangwar
 

Similar to Mule technology (20)

Mule ESB
Mule ESBMule ESB
Mule ESB
 
mule esb
mule esbmule esb
mule esb
 
Mule esb
Mule esbMule esb
Mule esb
 
Introduction to Mule ESB
Introduction to Mule ESBIntroduction to Mule ESB
Introduction to Mule ESB
 
Mule introduction
Mule introductionMule introduction
Mule introduction
 
Mule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh gMule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh g
 
Mule fundamentals
Mule fundamentalsMule fundamentals
Mule fundamentals
 
Mule in a nutshell
Mule in a nutshellMule in a nutshell
Mule in a nutshell
 
Mule architecture
Mule architectureMule architecture
Mule architecture
 
Mule architecture
Mule architectureMule architecture
Mule architecture
 
Mule esb
Mule esbMule esb
Mule esb
 
Mule architecture
Mule architectureMule architecture
Mule architecture
 
Mule architecture
Mule architectureMule architecture
Mule architecture
 
Mule ESB
Mule ESBMule ESB
Mule ESB
 
Mule esb overview
Mule esb overviewMule esb overview
Mule esb overview
 
Mule esb-architecture
Mule esb-architectureMule esb-architecture
Mule esb-architecture
 
Mule esb presentation 2015
Mule esb presentation 2015Mule esb presentation 2015
Mule esb presentation 2015
 
Mule soft
Mule softMule soft
Mule soft
 
Mule execution units
Mule execution unitsMule execution units
Mule execution units
 
Mule esb
Mule esbMule esb
Mule esb
 

More from F K

WebServices introduction in Mule
WebServices introduction in MuleWebServices introduction in Mule
WebServices introduction in Mule
F K
 
Testing soapui
Testing soapuiTesting soapui
Testing soapui
F K
 
Java For Begineers
Java For BegineersJava For Begineers
Java For Begineers
F K
 
Vm component
Vm componentVm component
Vm component
F K
 
Until successful component in mule
Until successful component in muleUntil successful component in mule
Until successful component in mule
F K
 
Quartz component
Quartz componentQuartz component
Quartz component
F K
 
Mule management console installation
Mule management console installation Mule management console installation
Mule management console installation
F K
 
Mule esb made system integration easy
Mule esb made system integration easy Mule esb made system integration easy
Mule esb made system integration easy
F K
 
Message properties component
Message properties componentMessage properties component
Message properties component
F K
 
Junit in mule
Junit in muleJunit in mule
Junit in mule
F K
 
Install sonarqube plugin in anypoint
Install sonarqube plugin in anypoint Install sonarqube plugin in anypoint
Install sonarqube plugin in anypoint
F K
 
Commit a project in svn using svn plugin in anypoint studio
Commit a project in svn using svn plugin in anypoint studioCommit a project in svn using svn plugin in anypoint studio
Commit a project in svn using svn plugin in anypoint studio
F K
 
Github plugin setup in anypoint studio
Github plugin setup in anypoint studio Github plugin setup in anypoint studio
Github plugin setup in anypoint studio
F K
 
For each component
For each component For each component
For each component
F K
 
Filter expression
Filter expression Filter expression
Filter expression
F K
 
File component
File component File component
File component
F K
 
Database component
Database component Database component
Database component
F K
 
Choice component
Choice component Choice component
Choice component
F K
 
Mule esb Data Weave
Mule esb Data WeaveMule esb Data Weave
Mule esb Data Weave
F K
 
Creating dynamic json in Mule
Creating dynamic json in MuleCreating dynamic json in Mule
Creating dynamic json in Mule
F K
 

More from F K (20)

WebServices introduction in Mule
WebServices introduction in MuleWebServices introduction in Mule
WebServices introduction in Mule
 
Testing soapui
Testing soapuiTesting soapui
Testing soapui
 
Java For Begineers
Java For BegineersJava For Begineers
Java For Begineers
 
Vm component
Vm componentVm component
Vm component
 
Until successful component in mule
Until successful component in muleUntil successful component in mule
Until successful component in mule
 
Quartz component
Quartz componentQuartz component
Quartz component
 
Mule management console installation
Mule management console installation Mule management console installation
Mule management console installation
 
Mule esb made system integration easy
Mule esb made system integration easy Mule esb made system integration easy
Mule esb made system integration easy
 
Message properties component
Message properties componentMessage properties component
Message properties component
 
Junit in mule
Junit in muleJunit in mule
Junit in mule
 
Install sonarqube plugin in anypoint
Install sonarqube plugin in anypoint Install sonarqube plugin in anypoint
Install sonarqube plugin in anypoint
 
Commit a project in svn using svn plugin in anypoint studio
Commit a project in svn using svn plugin in anypoint studioCommit a project in svn using svn plugin in anypoint studio
Commit a project in svn using svn plugin in anypoint studio
 
Github plugin setup in anypoint studio
Github plugin setup in anypoint studio Github plugin setup in anypoint studio
Github plugin setup in anypoint studio
 
For each component
For each component For each component
For each component
 
Filter expression
Filter expression Filter expression
Filter expression
 
File component
File component File component
File component
 
Database component
Database component Database component
Database component
 
Choice component
Choice component Choice component
Choice component
 
Mule esb Data Weave
Mule esb Data WeaveMule esb Data Weave
Mule esb Data Weave
 
Creating dynamic json in Mule
Creating dynamic json in MuleCreating dynamic json in Mule
Creating dynamic json in Mule
 

Recently uploaded

PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 

Recently uploaded (20)

PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 

Mule technology

  • 2. Purpose and Objectives Mule – Brief Introduction Special Features Messaging Framework Architecture Logical Data Flow Summery
  • 3. Mule – Brief Introduction  Mule is a lightweight Java-based messaging framework that allows you to quickly and easily connect your applications and enable them to exchange data.  Mule uses a service-oriented architecture (SOA), enabling easy integration of your existing systems. Regardless of the different technologies the applications use, including JMS, Web Services, JDBC, HTTP, and more, Mule seamlessly handles interactions among them all. The Mule framework is highly scalable, allowing you to start small and connect more applications over time. Mule manages all the interactions between applications and components transparently, regardless of whether they exist in the same virtual machine or over the Internet, and regardless of the underlying transport protocol used.  Mule is based on ideas from Enterprise Service Bus (ESB) architectures. The key advantage of an ESB is that it allows different applications to communicate with each other by acting as a transit system for carrying data between applications within your intranet or across the Internet. There are currently several commercial ESB implementations on the market. However, many of these provide limited functionality or are built on top of an existing application server or messaging server, locking you into that specific vendor. Mule is vendor-neutral, so different vendor implementations can plug in to it. You are never locked in to a specific vendor when you use Mule.
  • 4. Special Features  Mule components can be any type you want. You can easily integrate anything from a "plain old Java object" (POJO) to a component from another framework.  Mule and the ESB model enable significant component reuse. Unlike other frameworks, Mule allows you to use your existing components without any changes. Components do not require any Mule-specific code to run in Mule, and there is no programmatic API required. The business logic is kept completely separate from the messaging logic.  Messages can be in any format from SOAP to binary image files. Mule does not force any design constraints on the architect, such as XML messaging or WSDL service contracts.  You can deploy Mule in a variety of topologies, not just ESB. Because it is lightweight and embeddable, Mule can dramatically decrease time to market and increases productivity for projects to provide secure, scalable applications that are adaptive to change and can scale up or down as needed.
  • 5. Messaging Framework  The advantage of networking your applications is that one application can send data to another application. However, many applications don't have the ability to read or process data coming from another application. Mule solves this problem by providing a messaging framework that reads, transforms, and sends data as messages between applications. A message is simply a packet of data that can be handled and sent between applications on a specific channel (also called a queue).  At the simplest level, when you connect applications to Mule, it reads data from one application, transforms it as needed so it can be read by the target application, and sends it to that application. This allows you to integrate all types of applications, even those that were not built to be integrated.  Mule is a messaging framework based on ideas from Enterprise Service Bus (ESB) architectures. The key advantage of an ESB is that it allows different applications to communicate with each other by acting as a transit system for carrying data between applications within your intranet or across the Internet. The heart of the system is the message bus, which routes messages between applications.  One difference between Mule and a traditional ESB is that Mule only converts data as needed. With a typical ESB, you have to create an adapter for every application you connect to the bus and convert the application’s data into a single common messaging format. The development of these adapters and the time required to process every message requires a lot of time and effort. Mule eliminates the need for a single message format. The information is sent on any communication channel, such as HTTP or JMS, and is translated only as needed along the way. Therefore, Mule increases performance and reduces development time over a traditional ESB.
  • 6. Architecture  Mule is based on the concept of a service-oriented architecture (SOA). The SOA approach to development allows IT organizations to create applications by bringing together components of application functionality, or services. Services are discrete sets of functionality that are completely separate from each other but can work together on the same objects. For example, if you need to process invoices, you might have one service that merges customer data from a database into the invoice and another service that checks the inventory database to see if the items on the invoice are in stock.  Because each service stands alone, services can be used as building blocks for multiple processes and do not have to be recreated for each type of process or message. For example, the service that merges customer data onto the invoice could also be used to merge customer data onto statements, letters, or other documents. This modular approach allows you to create functionality once and re-use it as many times as needed, streamlining development.  Using SOA, businesses can realize dramatic savings on development costs and can rapidly adapt to changing business conditions by reusing and reconfiguring existing services in developing new applications. SOA also enables better integration of enterprise IT resources, including previously isolated application silos and legacy systems. Mule fully supports the SOA approach and orchestrates communication among the services, allowing you to easily tie all these applications together.
  • 8. Logical Data Flow (Continue…) 1. The customer places an order on the company web site, and an invoice is created as an XML form and submitted to http://myfirm.com/orders. 2. The HTTP transport receives the XML invoice and wraps it in a Mule message. The Customer Data service’s inbound endpoint is set to http://myfirm.com/orders, and its inbound router specifies that the message must contain a Java object, so the HTTP transport prepares to transform the XML invoice and dispatch the message to the service. 3. The XML to Object transformer converts the XML invoice into a Java object. Note that the next service and the final application also expect Java objects, so no further transformers are used in this scenario. 4. The transport passes the message with its transformed payload to the Customer Data service. 5. The Customer Data service component queries the master customer database to pull additional data about the customer and updates the invoice with the data. 6. The HTTP transport uses the outbound router configuration to determine that it must now dispatch the message to http://myfirm.com/verify. 7. The HTTP transport uses the inbound router configuration of the Inventory Verification service to receive the message and pass it to the service component. 8. The service component updates the invoice with an ID code of the warehouse that has all the items on the invoice in stock. 9. The outbound endpoint specifies a JMS address, so the JMS transport dispatches the message to the order fulfillment application, which picks up orders on that address.
  • 9. Summery Mule provides a messaging framework that enables exchange of data among applications. The application functionality is wrapped as a service, which includes a service component (the business logic that processes the data), routers (which use endpoints to specify where to send the message), and other configuration settings. Transports carry the messages on different channels from service to service, and transformers convert the messages and data as needed along the way. Mule is not a replacement for existing application frameworks. Instead, Mule leverages many open source projects such as Apache CXF, Spring, and ActiveMQ and fills a void in enterprise Java development where an application requires complex interactions with a variety of systems on a variety of platforms. Mule makes light work of wiring systems together in a robust, decoupled environment with little to no code and provides the necessary support to route, transport, and transform data to and from these systems.
  • 10. Summery Mule provides a messaging framework that enables exchange of data among applications. The application functionality is wrapped as a service, which includes a service component (the business logic that processes the data), routers (which use endpoints to specify where to send the message), and other configuration settings. Transports carry the messages on different channels from service to service, and transformers convert the messages and data as needed along the way. Mule is not a replacement for existing application frameworks. Instead, Mule leverages many open source projects such as Apache CXF, Spring, and ActiveMQ and fills a void in enterprise Java development where an application requires complex interactions with a variety of systems on a variety of platforms. Mule makes light work of wiring systems together in a robust, decoupled environment with little to no code and provides the necessary support to route, transport, and transform data to and from these systems.