SlideShare a Scribd company logo
Mule
BASIC FUNDAMENTALS
About Mulesoft
 Mule is a lightweight integration platform
 Mule enables you to connect anything, anywhere. Rather
than creating multiple point-to-point integrations between
systems, services, APIs, and devices, you can use Mule to
intelligently manage message routing, data mapping,
orchestration, reliability, security, and scalability between
nodes. Plug other systems and applications into Mule and let it
handle all the communication between systems, enabling
you to track and monitor everything that happens
With Mule we can…….
 integrate applications or systems on premise or in the cloud
 use connectors to create SaaS integration applications
 build and expose APIs and consume APIs
 create Web services which orchestrate calls to other services
 create interfaces to expose applications for mobile consumption
 integrate B2B with solutions that are secure, efficient, and quick to
build and deploy
 shift applications onto the cloud
 connect B2B e-commerce activities
Mule Concept
 Based on the concept of Event Driven Architecture (EDA), Mule
works by responding to messages initiated by external resources (i.e.
events). At the simplest level, Mule applications accept and process
events as messages through several message processors plugged
together in a flow. Alternatively, large or streaming messages can
be processed as records in a batch job. Understanding the basic
flow architecture and batch job structure is key to understanding
Mule. Essentially every Mule flow contains a series of message
processors that accept, then process messages. Mule applications
usually contain multiple linked flows and/or batch jobs, which, in
combination, perform the integration required for your use case.
Flows
 A flow is the construct within which you link together several
individual elements to handle the receipt, processing, and eventual
routing of a message. You can connect many flows together to
build a complete application which you can then deploy on
premise, on Mule or another application server, or in the cloud.
 At the simplest level, flows are sequences of message-processing
events. A message that enters a flow may pass through a wide
variety of processors. In the example diagram below, Mule receives
the message through a request-response inbound endpoint,
transforms the content into a new format, and processes the
business logic in a component before returning a response via the
message source.
Mule fundamentals
Batch Jobs
 A batch job is a top-level element in Mule which exists outside all Mule
flows. Batch jobs split large messages into records which Mule processes
asynchronously; just as flows process messages, batch jobs process
records.
 A batch job contains one or more batch steps which, in turn, contain
any number of message processors that act upon records as they
move through the batch job.
 During batch processing, you can use record-level
variables (recordvars) and MEL expressions to enrich, route or otherwise
act upon records.
 A batch job executes when triggered by either a batch executor in a
Mule flow or a message source in a batch-accepting input; when
triggered, Mule creates a new batch job instance. When all records
have passed through all batch steps, the batch job instance ends and
the batch job result can be summarized in a report to indicate which
records succeeded and which failed during processing.
Mule fundamentals
Message Sources
 Mule processes messages initiated in external resources.
 Most flows or batch jobs is a receiver which receives new messages
and places them in the queue for processing. This message source
receives messages from one or more external sources, thus
triggering the execution of a flow or batch job.
Message Processors
 In Mule, message processors are grouped together by category.
 Mule transformers are the key to exchanging data between nodes, as they allow Mule to
convert message payload data to a format that another application can understand. Mule
also enables content enrichment of messages which allows you to retrieve additional data
during processing and attach it to the message.
 Mule uses components to conduct backend processes for specific business logic such as
checking customer and inventory databases. Components route messages to the correct
application, such as an order fulfillment system. Mule uses Staged Event-Driven Architecture
(SEDA) for core asynchronous message processing in flows.
 Importantly, components don’t have to have any Mule-specific code; they can simply be
POJOs, Spring beans, Java beans, Groovy scripts, or web services containing the business logic
for processing data. Components can even be developed in other languages such as Python,
JavaScript, Ruby, and PHP. Mule’s catalog of building blocks support the most commonly used
Enterprise Integration Patterns.
 Flows and batch jobs can also include filters, scopes, and routers.
 When you configure the individual elements that link together to make your flow or batch job,
you can use Mule Expression Language to extract information about the message or its
environment and instruct Mule to make processing decisions based on that information.
Elements in a Mule Flow
Mule Message Structure
 The Mule message is the data that passes through an application
via one or more flows. It consists of two main parts:
 the message header, which contains metadata about the
message
 the message payload, which contains your business-specific data.
 A Mule message is, itself, embedded within a Mule message object.
Some Mule message objects may contain variables, attachments,
and exception payloads. However, as attachments and exception
payloads are not frequently used or manipulated, this overview
document does not include details about them.
Mule fundamentals
Properties and Variables
 The metadata contained in the message header consists
of properties which provide useful information about the message.
Contained within the message object, variablesrepresent data
about a message.
 Properties have two main scopes: inbound and outbound.
Outbound properties
Inbound
properties :
Variables
 Variables are user-defined metadata about a message. Variables
have three scopes:
 Flow variables apply only to the flow in which they exist.
 Session variables apply across all flows within the same application.
 Record variables apply to only to records processed as part of
a batch.
Message Payload
 The message payload is the most important part of the Mule
message because it contains the data your Mule application
processes. You may apply metadata in the message header or
message object to communicate information about your message.
THANK YOU

More Related Content

PPTX
Mule message structure
PPT
Overview of Mule
PPTX
Mule message structure and varibles scopes
PPT
Mule healthcare toolkit
PPT
Mule hct
PPTX
PPTX
Mule ESB Tutorial Part 3
PPTX
Mule rabbitmq
Mule message structure
Overview of Mule
Mule message structure and varibles scopes
Mule healthcare toolkit
Mule hct
Mule ESB Tutorial Part 3
Mule rabbitmq

What's hot (20)

PPT
Mule esb
PPTX
Choice router mule
PPTX
Routing in mule
PPTX
Mule Collection Aggregator
PPTX
Dataweave in studio
PPTX
Mule esb transformers
PPTX
File component in mule
PPTX
Mule esb2
PPTX
Mule concepts
PPT
WebServices SOAP WSDL and UDDI
ODP
Mule Complete Training
PPTX
Mule edifact module
PPTX
Logging configuration in mule
PPTX
File connector mule
PDF
Mule ESB Interview or Certification questions
PPTX
Send email attachment using smtp in mule esb
PDF
Interoperability issues in accessing databases through Web Services
PPTX
Mulesoft file connector
PPT
Data weave reference documentation
PPTX
Choice component in mule
Mule esb
Choice router mule
Routing in mule
Mule Collection Aggregator
Dataweave in studio
Mule esb transformers
File component in mule
Mule esb2
Mule concepts
WebServices SOAP WSDL and UDDI
Mule Complete Training
Mule edifact module
Logging configuration in mule
File connector mule
Mule ESB Interview or Certification questions
Send email attachment using smtp in mule esb
Interoperability issues in accessing databases through Web Services
Mulesoft file connector
Data weave reference documentation
Choice component in mule
Ad

Viewers also liked (13)

PPTX
Mule flow and filter
PPTX
WebService with VM
PPTX
Handle exceptions in mule
PPTX
Data weave in Mule
PPTX
Mule property placeholder
PPTX
Scatter gather flow in mule
PPTX
Scatter gather in mule
PPTX
Mule for each scope header collection
PPTX
Idempotent filter in mule
PPTX
Splitting with mule
DOCX
Collection Splitter Aggregator in Mule ESB
PPTX
Elements in a mule flow
PDF
Mule ESB Fundamentals
Mule flow and filter
WebService with VM
Handle exceptions in mule
Data weave in Mule
Mule property placeholder
Scatter gather flow in mule
Scatter gather in mule
Mule for each scope header collection
Idempotent filter in mule
Splitting with mule
Collection Splitter Aggregator in Mule ESB
Elements in a mule flow
Mule ESB Fundamentals
Ad

Similar to Mule fundamentals (20)

PPTX
Mule concepts
PPTX
Mule architecture
PPTX
Mule architecture
PPTX
Elements in a muleflow
PPT
Mule ESB
PPT
PPT
Mule technology
 
PPT
Mule technology
PPT
Mule technology
PPT
Mule ESB
PPT
Mulethenewtechnology 12549172699166-phpapp03-160421133841
PPT
Mule esb presentation 2015
PPTX
Mule introduction
PPTX
Mule esb
PPTX
Mule esb
PPTX
Mule chapter2
PPTX
Srilekha mule esb
PPTX
Mule enterprise service introduction
Mule concepts
Mule architecture
Mule architecture
Elements in a muleflow
Mule ESB
Mule technology
 
Mule technology
Mule technology
Mule ESB
Mulethenewtechnology 12549172699166-phpapp03-160421133841
Mule esb presentation 2015
Mule introduction
Mule esb
Mule esb
Mule chapter2
Srilekha mule esb
Mule enterprise service introduction

More from prudhvivreddy (20)

PPTX
About Mule execution units
PPTX
Working with components
PPTX
About mule transformers
PPTX
About jms
PPTX
Webservices
PPTX
Generating the mule flow as html document
PPTX
Sftp connector
PPTX
Imap connector
PPTX
Ftp connector
PPTX
Hdfs connector
PPTX
Ajax connector
PPTX
Basic example using vm component
PPTX
Basic example using until successful component
PPTX
Basic example using message properties component
PPTX
Basic example using for each component
PPTX
Basic example using database component
PPTX
Basic example using choice component
PPTX
Basic example using file connector in anypoint studio
PPTX
Basic example using quartz component in anypoint studio
PPTX
Salesforce connector Example
About Mule execution units
Working with components
About mule transformers
About jms
Webservices
Generating the mule flow as html document
Sftp connector
Imap connector
Ftp connector
Hdfs connector
Ajax connector
Basic example using vm component
Basic example using until successful component
Basic example using message properties component
Basic example using for each component
Basic example using database component
Basic example using choice component
Basic example using file connector in anypoint studio
Basic example using quartz component in anypoint studio
Salesforce connector Example

Recently uploaded (20)

PDF
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
PPTX
COMPUTERS AS DATA ANALYSIS IN PRECLINICAL DEVELOPMENT.pptx
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PDF
Open folder Downloads.pdf yes yes ges yes
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PPTX
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
PDF
01-Introduction-to-Information-Management.pdf
PPTX
Cardiovascular Pharmacology for pharmacy students.pptx
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
Business Ethics Teaching Materials for college
PDF
Pre independence Education in Inndia.pdf
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PDF
Microbial disease of the cardiovascular and lymphatic systems
PPTX
GDM (1) (1).pptx small presentation for students
PDF
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PPTX
Open Quiz Monsoon Mind Game Prelims.pptx
PDF
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
COMPUTERS AS DATA ANALYSIS IN PRECLINICAL DEVELOPMENT.pptx
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
Open folder Downloads.pdf yes yes ges yes
human mycosis Human fungal infections are called human mycosis..pptx
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
01-Introduction-to-Information-Management.pdf
Cardiovascular Pharmacology for pharmacy students.pptx
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Business Ethics Teaching Materials for college
Pre independence Education in Inndia.pdf
Pharmacology of Heart Failure /Pharmacotherapy of CHF
Microbial disease of the cardiovascular and lymphatic systems
GDM (1) (1).pptx small presentation for students
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
FourierSeries-QuestionsWithAnswers(Part-A).pdf
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
Open Quiz Monsoon Mind Game Prelims.pptx
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
2.FourierTransform-ShortQuestionswithAnswers.pdf

Mule fundamentals

  • 2. About Mulesoft  Mule is a lightweight integration platform  Mule enables you to connect anything, anywhere. Rather than creating multiple point-to-point integrations between systems, services, APIs, and devices, you can use Mule to intelligently manage message routing, data mapping, orchestration, reliability, security, and scalability between nodes. Plug other systems and applications into Mule and let it handle all the communication between systems, enabling you to track and monitor everything that happens
  • 3. With Mule we can…….  integrate applications or systems on premise or in the cloud  use connectors to create SaaS integration applications  build and expose APIs and consume APIs  create Web services which orchestrate calls to other services  create interfaces to expose applications for mobile consumption  integrate B2B with solutions that are secure, efficient, and quick to build and deploy  shift applications onto the cloud  connect B2B e-commerce activities
  • 4. Mule Concept  Based on the concept of Event Driven Architecture (EDA), Mule works by responding to messages initiated by external resources (i.e. events). At the simplest level, Mule applications accept and process events as messages through several message processors plugged together in a flow. Alternatively, large or streaming messages can be processed as records in a batch job. Understanding the basic flow architecture and batch job structure is key to understanding Mule. Essentially every Mule flow contains a series of message processors that accept, then process messages. Mule applications usually contain multiple linked flows and/or batch jobs, which, in combination, perform the integration required for your use case.
  • 5. Flows  A flow is the construct within which you link together several individual elements to handle the receipt, processing, and eventual routing of a message. You can connect many flows together to build a complete application which you can then deploy on premise, on Mule or another application server, or in the cloud.  At the simplest level, flows are sequences of message-processing events. A message that enters a flow may pass through a wide variety of processors. In the example diagram below, Mule receives the message through a request-response inbound endpoint, transforms the content into a new format, and processes the business logic in a component before returning a response via the message source.
  • 7. Batch Jobs  A batch job is a top-level element in Mule which exists outside all Mule flows. Batch jobs split large messages into records which Mule processes asynchronously; just as flows process messages, batch jobs process records.  A batch job contains one or more batch steps which, in turn, contain any number of message processors that act upon records as they move through the batch job.  During batch processing, you can use record-level variables (recordvars) and MEL expressions to enrich, route or otherwise act upon records.  A batch job executes when triggered by either a batch executor in a Mule flow or a message source in a batch-accepting input; when triggered, Mule creates a new batch job instance. When all records have passed through all batch steps, the batch job instance ends and the batch job result can be summarized in a report to indicate which records succeeded and which failed during processing.
  • 9. Message Sources  Mule processes messages initiated in external resources.  Most flows or batch jobs is a receiver which receives new messages and places them in the queue for processing. This message source receives messages from one or more external sources, thus triggering the execution of a flow or batch job.
  • 10. Message Processors  In Mule, message processors are grouped together by category.  Mule transformers are the key to exchanging data between nodes, as they allow Mule to convert message payload data to a format that another application can understand. Mule also enables content enrichment of messages which allows you to retrieve additional data during processing and attach it to the message.  Mule uses components to conduct backend processes for specific business logic such as checking customer and inventory databases. Components route messages to the correct application, such as an order fulfillment system. Mule uses Staged Event-Driven Architecture (SEDA) for core asynchronous message processing in flows.  Importantly, components don’t have to have any Mule-specific code; they can simply be POJOs, Spring beans, Java beans, Groovy scripts, or web services containing the business logic for processing data. Components can even be developed in other languages such as Python, JavaScript, Ruby, and PHP. Mule’s catalog of building blocks support the most commonly used Enterprise Integration Patterns.  Flows and batch jobs can also include filters, scopes, and routers.  When you configure the individual elements that link together to make your flow or batch job, you can use Mule Expression Language to extract information about the message or its environment and instruct Mule to make processing decisions based on that information.
  • 11. Elements in a Mule Flow
  • 12. Mule Message Structure  The Mule message is the data that passes through an application via one or more flows. It consists of two main parts:  the message header, which contains metadata about the message  the message payload, which contains your business-specific data.  A Mule message is, itself, embedded within a Mule message object. Some Mule message objects may contain variables, attachments, and exception payloads. However, as attachments and exception payloads are not frequently used or manipulated, this overview document does not include details about them.
  • 14. Properties and Variables  The metadata contained in the message header consists of properties which provide useful information about the message. Contained within the message object, variablesrepresent data about a message.  Properties have two main scopes: inbound and outbound.
  • 16. Variables  Variables are user-defined metadata about a message. Variables have three scopes:  Flow variables apply only to the flow in which they exist.  Session variables apply across all flows within the same application.  Record variables apply to only to records processed as part of a batch.
  • 17. Message Payload  The message payload is the most important part of the Mule message because it contains the data your Mule application processes. You may apply metadata in the message header or message object to communicate information about your message.