SlideShare a Scribd company logo
Mule ESB
Kiet Bui
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

Cloud hub architecture
Cloud hub architectureCloud hub architecture
Cloud hub architecture
Shanky Gupta
 
Enterprise resources and mule
Enterprise resources and muleEnterprise resources and mule
Enterprise resources and mule
D.Rajesh Kumar
 
Mule esb
Mule esbMule esb
Mule esb
Sindhu VL
 
Mule architecture
Mule architectureMule architecture
Mule architecture
Phaniu
 
Overview of Mule Esb
Overview of Mule EsbOverview of Mule Esb
Overview of Mule Esb
javeed_mhd
 
Mule esb overview
Mule esb overviewMule esb overview
Mule esb overview
Swami Satish
 
Mule ESB
Mule ESBMule ESB
Mule ESB
chetan singhal
 
Mule ESB
Mule ESBMule ESB
Mule ESBniravn
 
Mule in a nutshell
Mule in a nutshellMule in a nutshell
Mule in a nutshell
Ravinder Singh
 
Mule ESB
Mule ESBMule ESB
Mule ESB
Rajkattamuri
 
Anypoint data gateway
Anypoint data gatewayAnypoint data gateway
Anypoint data gateway
Praneethchampion
 
Mule mule runtime engine
Mule  mule runtime engineMule  mule runtime engine
Mule mule runtime engine
D.Rajesh Kumar
 
Mule esb
Mule esbMule esb
Mule esb
charan teja R
 
Mule connectors
Mule  connectorsMule  connectors
Mule connectors
charan teja R
 
Introduce Mule
Introduce MuleIntroduce Mule
Introduce Mule
mha4
 
Mule anypoint connector dev kit
Mule  anypoint connector dev kitMule  anypoint connector dev kit
Mule anypoint connector dev kit
D.Rajesh Kumar
 
SOAP Service in Mule Esb
SOAP Service in Mule EsbSOAP Service in Mule Esb
SOAP Service in Mule Esb
Anand kalla
 
Mule security
Mule  securityMule  security
Mule security
charan teja R
 
Mule technology
Mule technologyMule technology
Mule technology
Praneethchampion
 

What's hot (19)

Cloud hub architecture
Cloud hub architectureCloud hub architecture
Cloud hub architecture
 
Enterprise resources and mule
Enterprise resources and muleEnterprise resources and mule
Enterprise resources and mule
 
Mule esb
Mule esbMule esb
Mule esb
 
Mule architecture
Mule architectureMule architecture
Mule architecture
 
Overview of Mule Esb
Overview of Mule EsbOverview of Mule Esb
Overview of Mule Esb
 
Mule esb overview
Mule esb overviewMule esb overview
Mule esb overview
 
Mule ESB
Mule ESBMule ESB
Mule ESB
 
Mule ESB
Mule ESBMule ESB
Mule ESB
 
Mule in a nutshell
Mule in a nutshellMule in a nutshell
Mule in a nutshell
 
Mule ESB
Mule ESBMule ESB
Mule ESB
 
Anypoint data gateway
Anypoint data gatewayAnypoint data gateway
Anypoint data gateway
 
Mule mule runtime engine
Mule  mule runtime engineMule  mule runtime engine
Mule mule runtime engine
 
Mule esb
Mule esbMule esb
Mule esb
 
Mule connectors
Mule  connectorsMule  connectors
Mule connectors
 
Introduce Mule
Introduce MuleIntroduce Mule
Introduce Mule
 
Mule anypoint connector dev kit
Mule  anypoint connector dev kitMule  anypoint connector dev kit
Mule anypoint connector dev kit
 
SOAP Service in Mule Esb
SOAP Service in Mule EsbSOAP Service in Mule Esb
SOAP Service in Mule Esb
 
Mule security
Mule  securityMule  security
Mule security
 
Mule technology
Mule technologyMule technology
Mule technology
 

Similar to Mule ESB

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 architecture
Mule architectureMule architecture
Mule architecture
irfan1008
 
Mule architecture
Mule architectureMule architecture
Mule architecture
princeirfancivil
 
Mule architecture
Mule architectureMule architecture
Mule architecture
Anand kalla
 
Mule esb
Mule esbMule esb
Mule esb-architecture
Mule esb-architectureMule esb-architecture
Mule esb-architecture
himajareddys
 
Architecture of mule
Architecture of muleArchitecture of mule
Architecture of mule
Vamsi Krishna
 
Mule soft
Mule softMule soft
Mule esb presentation 2015
Mule esb presentation 2015Mule esb presentation 2015
Mule esb presentation 2015
Nagesh Penumarthy
 
Mule architecture
Mule   architectureMule   architecture
Mule architecture
himajareddys
 
Mule architecture
Mule   architectureMule   architecture
Mule architecture
D.Rajesh Kumar
 
MuleEsb
MuleEsbMuleEsb
MuleEsb
Mohammed625
 
Mule execution units
Mule execution unitsMule execution units
Mule execution units
kiranvanga
 
Mule esb
Mule esbMule esb
Mule esb
Prabhat gangwar
 
Complete integration with mule esb
Complete integration with mule esbComplete integration with mule esb
Complete integration with mule esb
Son Nguyen
 

Similar to Mule ESB (20)

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 architecture
Mule architectureMule architecture
Mule architecture
 
Mule architecture
Mule architectureMule architecture
Mule architecture
 
Mule architecture
Mule architectureMule architecture
Mule architecture
 
Mule esb
Mule esbMule esb
Mule esb
 
Mule esb-architecture
Mule esb-architectureMule esb-architecture
Mule esb-architecture
 
Architecture of mule
Architecture of muleArchitecture of mule
Architecture of mule
 
Mule soft
Mule softMule soft
Mule soft
 
Mule esb presentation 2015
Mule esb presentation 2015Mule esb presentation 2015
Mule esb presentation 2015
 
Mule architecture
Mule   architectureMule   architecture
Mule architecture
 
Mule architecture
Mule   architectureMule   architecture
Mule architecture
 
MuleEsb
MuleEsbMuleEsb
MuleEsb
 
Mule execution units
Mule execution unitsMule execution units
Mule execution units
 
Mule esb
Mule esbMule esb
Mule esb
 
Complete integration with mule esb
Complete integration with mule esbComplete integration with mule esb
Complete integration with mule esb
 

More from Bui Kiet

Asynchronous javascript and xml
Asynchronous javascript and xmlAsynchronous javascript and xml
Asynchronous javascript and xml
Bui Kiet
 
Jquery tutorial
Jquery tutorialJquery tutorial
Jquery tutorial
Bui 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 architecture
Bui Kiet
 
Jms introduction
Jms introductionJms introduction
Jms introduction
Bui Kiet
 
Wso2 in action
Wso2 in actionWso2 in action
Wso2 in action
Bui Kiet
 
Easy javascript
Easy javascriptEasy javascript
Easy javascript
Bui Kiet
 
JavaScript Tutorial
JavaScript  TutorialJavaScript  Tutorial
JavaScript Tutorial
Bui Kiet
 
Java basic tutorial
Java basic tutorialJava basic tutorial
Java basic tutorial
Bui Kiet
 
Java Tutorial | My Heart
Java Tutorial | My HeartJava Tutorial | My Heart
Java Tutorial | My Heart
Bui Kiet
 
Technology presentations
Technology presentationsTechnology presentations
Technology presentations
Bui Kiet
 
Soap In Mule
Soap In MuleSoap In Mule
Soap In Mule
Bui Kiet
 
Mule Esb Batch process
Mule Esb Batch processMule Esb Batch process
Mule Esb Batch process
Bui Kiet
 
Mule solutions for data integration
Mule solutions for data integrationMule solutions for data integration
Mule solutions for data integration
Bui 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
 
Mule Sap Integration
Mule Sap IntegrationMule Sap Integration
Mule Sap Integration
Bui Kiet
 
Why Mulesoft ?
Why Mulesoft ?Why Mulesoft ?
Why Mulesoft ?
Bui Kiet
 
Mule Integration Simplified
Mule Integration SimplifiedMule Integration Simplified
Mule Integration Simplified
Bui Kiet
 
Enjoy Munit with Mule
Enjoy Munit with MuleEnjoy Munit with Mule
Enjoy Munit with Mule
Bui Kiet
 
.Net architecture with mule soft
.Net architecture with mule soft.Net architecture with mule soft
.Net architecture with mule soft
Bui 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 Sap Integration
Mule Sap IntegrationMule Sap Integration
Mule Sap Integration
 
Why Mulesoft ?
Why Mulesoft ?Why Mulesoft ?
Why Mulesoft ?
 
Mule Integration Simplified
Mule Integration SimplifiedMule Integration Simplified
Mule Integration Simplified
 
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
 

Recently uploaded

The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
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
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
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
 
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
 
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
 
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
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
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
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
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
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
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
 

Recently uploaded (20)

The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
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
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
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...
 
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
 
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
 
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...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
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...
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
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...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
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
 

Mule ESB

  • 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.