SlideShare uma empresa Scribd logo
1 de 29
O elefante e a mula
Taffarel de Lima Oliveira
Agenda
●

O que é ESB?

●

Características de um ESB

●

Por que usar um ESB?

●

Mule ESB

●

Utilizando a mula para fazer o trabalho pesado

●

Considerações finais
Era uma vez...
O que é um ESB?
ESB = Enterprise Service Bus

Origem do termo surgiu em 2002 pela Gartner.

Roy Schulte, descreveu como uma categoria de software na
época.
O que é um ESB?
"A style of integration architecture that allows communication via a common communication bus that
consists of a variety of point-to-point connections between providers and users of services."

"An infrastructure that a company uses for integrating services in the application landscape."

"An architecture pattern that enables interoperability between heterogeneous environments, using service
orientation."
O que é um ESB?

“ESB is just one architecture”
Ross Mason
O que é um ESB?

Enterprise Service Bus
Características de um ESB
●

Message Transformation;

●

Message Enhancement;

●

Protocol Tranformation;

●

Service Mapping

●

Message Processing

●

Process Choreography

●

Service Orchestration

●

Transaction

●

Security

●

Routing
Por que usar um ESB?
●

Arquitetura bem definida;

●

Escalável;

●

Facilidade de integrar novas aplicações;

●

Confiabilidade;

●

Facilidade em migrar os sistemas legados;
Mule ESB
Mule ESB
Mule ESB
●

Utilizando XML;

●

Usando Mule Studio, arrastando os componentes;
Mule ESB
Mule ESB
Mule ESB
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:spring="http://www.springframework.org/schema/beans" version="CE-3.4.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mulehttp.xsd">
<flow name="SimpleExampleFlow1" doc:name="SimpleExampleFlow1">
<http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8081"
path="php/conference" doc:name="HTTP"/>
<set-payload value="PHP Conference 2013" doc:name="Set Payload"/>
<echo-component doc:name="Echo"/>
</flow>
</mule>
Mule ESB
●

Header da mensagem, que contem os metadados da mensagem;

●

Payload da mensagem, que contem a mensagem em si;
Mule ESB
Components
General Components

●

●

Web Service Components

Echo

REST

Flow Reference

SOAP

Logger
●

Script Components
Groovy
Java
JavaScript
Python
Ruby
Script
Mule ESB
Inbound and Outbound Endpoints
●

Inbound and Outbound Endpoints

●

AJAX

Inbound Only Endpoints
IMAP

Enterprise Edition Database (JDBC)

Jetty

Enterprise Edition FTP

Pop3

File
Generic

Salesforce (Streaming)

HTTP

Servlet

JMS, VM

Twitter (Streaming)

Quartz
SFTP
SSL (TLS), TCP, UDP

●

Outbound Only Endpoints
SMTP
Mule ESB
Filters
And/Not/Or
Custom
Exception
Expression
Filter Ref
Idempotent Message
Message
Message Property
Payload
Regex
Schema Validation
Wildcard Filter
Mule ESB
Routers
●

Flow Controls That Do Not Change the Payload
All
Choice
First Successful
Round Robin

●

Flow Controls That Modify the Payload
Collection Aggregator
Collection Splitter
Custom Aggregator
Message Chunk Aggregator
Message Chunk Splitter
Resequencer
Splitter
Mule ESB
Scops
Async
Cache
Composite Source
Foreach
Message Enricher
Poll
Sub Flow
Until Successful
Mule ESB
Error Handling
Catch exception strategy
Rollback exception strategy
Reference exception strategy
Choice exception strategy
Utilizando a mula para fazer o trabalho
pesado!
Utilizando a mula para fazer o trabalho
pesado!

ESB
Utilizando a mula para fazer o trabalho
pesado!
Utilizando a mula para fazer o trabalho
pesado!
Utilizando a mula para fazer o trabalho
pesado!
Considerações finais!
Arquitetura ESB é uma boa pedida para integrar projetos que:
●

Inclua mais do que duas aplicações;

●

Permitindo a inclusão de novas aplicações no futuro;

●

Baixo custo de manutenção;

●

Menos dor de cabeça, na hora em que uma integração para;

●

Baixa curva de aprendizado;

●

Comunidade ativa e fácil acesso aos core-developers;
Contatos
taffarelo3@gmail.com
Github.com.br/taffarel
https://coderwall.com/taffarel

OBRIGADO!!

Mais conteúdo relacionado

Mais procurados

Como criar um http proxy dinamico com mule parte 1
Como criar um http proxy dinamico com mule   parte 1Como criar um http proxy dinamico com mule   parte 1
Como criar um http proxy dinamico com mule parte 1Jeison Barros
 
Cluster e Alta Disponibilidade na Prática com JBoss AS 7
Cluster e Alta Disponibilidade na Prática com JBoss AS 7Cluster e Alta Disponibilidade na Prática com JBoss AS 7
Cluster e Alta Disponibilidade na Prática com JBoss AS 7Mauricio Magnani Jr
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETRenato Groff
 
Novidades do Windows Azure AppFabric
Novidades do Windows Azure AppFabricNovidades do Windows Azure AppFabric
Novidades do Windows Azure AppFabricEvilázaro Alves
 
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)Renato Groff
 
Criando APIs com Slim Framework
Criando APIs com Slim FrameworkCriando APIs com Slim Framework
Criando APIs com Slim FrameworkDenilson Raimundo
 
Apresentação servidores de aplicação
Apresentação   servidores de aplicaçãoApresentação   servidores de aplicação
Apresentação servidores de aplicaçãoHelen Picoli
 
Criando Webservices RESTFul com CakePHP
Criando Webservices RESTFul com CakePHPCriando Webservices RESTFul com CakePHP
Criando Webservices RESTFul com CakePHPRenan Gonçalves
 
Interagindo com web services RPC, SOAP e REST utilizando PHP
Interagindo com web services RPC, SOAP e REST utilizando PHPInteragindo com web services RPC, SOAP e REST utilizando PHP
Interagindo com web services RPC, SOAP e REST utilizando PHPEduardo Cesar
 
Enterprise JavaBeans simples e descomplicado, na prática
Enterprise JavaBeans simples e descomplicado, na práticaEnterprise JavaBeans simples e descomplicado, na prática
Enterprise JavaBeans simples e descomplicado, na práticaGlobalcode
 
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)Tiago Marchetti Dolphine
 
Apresentação hotspot
Apresentação hotspotApresentação hotspot
Apresentação hotspotLincolm Aguiar
 

Mais procurados (20)

Como criar um http proxy dinamico com mule parte 1
Como criar um http proxy dinamico com mule   parte 1Como criar um http proxy dinamico com mule   parte 1
Como criar um http proxy dinamico com mule parte 1
 
Cluster e Alta Disponibilidade na Prática com JBoss AS 7
Cluster e Alta Disponibilidade na Prática com JBoss AS 7Cluster e Alta Disponibilidade na Prática com JBoss AS 7
Cluster e Alta Disponibilidade na Prática com JBoss AS 7
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
 
Palestra FISL 14 JBoss Cluster
Palestra FISL 14 JBoss ClusterPalestra FISL 14 JBoss Cluster
Palestra FISL 14 JBoss Cluster
 
Novidades do Windows Azure AppFabric
Novidades do Windows Azure AppFabricNovidades do Windows Azure AppFabric
Novidades do Windows Azure AppFabric
 
Rest introdução
Rest introduçãoRest introdução
Rest introdução
 
Angular2 - Principais Mudanças
Angular2 - Principais MudançasAngular2 - Principais Mudanças
Angular2 - Principais Mudanças
 
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
 
Web Services
Web ServicesWeb Services
Web Services
 
Criando APIs com Slim Framework
Criando APIs com Slim FrameworkCriando APIs com Slim Framework
Criando APIs com Slim Framework
 
Apresentação servidores de aplicação
Apresentação   servidores de aplicaçãoApresentação   servidores de aplicação
Apresentação servidores de aplicação
 
Web Sphere
Web SphereWeb Sphere
Web Sphere
 
JUDCon Brazil 2013
JUDCon Brazil 2013JUDCon Brazil 2013
JUDCon Brazil 2013
 
Criando Webservices RESTFul com CakePHP
Criando Webservices RESTFul com CakePHPCriando Webservices RESTFul com CakePHP
Criando Webservices RESTFul com CakePHP
 
Interagindo com web services RPC, SOAP e REST utilizando PHP
Interagindo com web services RPC, SOAP e REST utilizando PHPInteragindo com web services RPC, SOAP e REST utilizando PHP
Interagindo com web services RPC, SOAP e REST utilizando PHP
 
DevTalk 08/2019
DevTalk 08/2019DevTalk 08/2019
DevTalk 08/2019
 
Enterprise JavaBeans simples e descomplicado, na prática
Enterprise JavaBeans simples e descomplicado, na práticaEnterprise JavaBeans simples e descomplicado, na prática
Enterprise JavaBeans simples e descomplicado, na prática
 
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
 
Apresentação hotspot
Apresentação hotspotApresentação hotspot
Apresentação hotspot
 
SQL over SMB3
SQL over SMB3SQL over SMB3
SQL over SMB3
 

Destaque

AE Rio 2011 - Arquitetura da Informação organizacional
AE Rio 2011 - Arquitetura da Informação organizacionalAE Rio 2011 - Arquitetura da Informação organizacional
AE Rio 2011 - Arquitetura da Informação organizacionalFernando Botafogo
 
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...Anderson Diniz Hummel
 
introdução ao enterprise architect
introdução ao enterprise architectintrodução ao enterprise architect
introdução ao enterprise architectRanieri de Souza
 
PESQUISA SOBRE BARRAMENTO
PESQUISA SOBRE BARRAMENTOPESQUISA SOBRE BARRAMENTO
PESQUISA SOBRE BARRAMENTOOtaviano Viana
 
Enterprise Architecture
Enterprise ArchitectureEnterprise Architecture
Enterprise ArchitectureMarcelo Sávio
 
Power bi na prática 2016
Power bi na prática 2016Power bi na prática 2016
Power bi na prática 2016Rodrigo Dornel
 
BI - Padrões de arquitetura e uso recursos
BI - Padrões de arquitetura e uso recursosBI - Padrões de arquitetura e uso recursos
BI - Padrões de arquitetura e uso recursosGiulianoCardoso
 
Governança da Arquitetura Corporativa
Governança da Arquitetura CorporativaGovernança da Arquitetura Corporativa
Governança da Arquitetura CorporativaMarcelo Sávio
 
AAB305 - Service Oriented Architecture - wcamb
AAB305 - Service Oriented Architecture - wcambAAB305 - Service Oriented Architecture - wcamb
AAB305 - Service Oriented Architecture - wcambMicrosoft Brasil
 

Destaque (12)

AE Rio 2011 - Arquitetura da Informação organizacional
AE Rio 2011 - Arquitetura da Informação organizacionalAE Rio 2011 - Arquitetura da Informação organizacional
AE Rio 2011 - Arquitetura da Informação organizacional
 
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...
 
David teece
David teeceDavid teece
David teece
 
introdução ao enterprise architect
introdução ao enterprise architectintrodução ao enterprise architect
introdução ao enterprise architect
 
PESQUISA SOBRE BARRAMENTO
PESQUISA SOBRE BARRAMENTOPESQUISA SOBRE BARRAMENTO
PESQUISA SOBRE BARRAMENTO
 
Enterprise Architecture
Enterprise ArchitectureEnterprise Architecture
Enterprise Architecture
 
Power bi na prática 2016
Power bi na prática 2016Power bi na prática 2016
Power bi na prática 2016
 
BI - Padrões de arquitetura e uso recursos
BI - Padrões de arquitetura e uso recursosBI - Padrões de arquitetura e uso recursos
BI - Padrões de arquitetura e uso recursos
 
Governança da Arquitetura Corporativa
Governança da Arquitetura CorporativaGovernança da Arquitetura Corporativa
Governança da Arquitetura Corporativa
 
Arquitetura Corporativa
Arquitetura  CorporativaArquitetura  Corporativa
Arquitetura Corporativa
 
ArquiteturaSoftware
ArquiteturaSoftwareArquiteturaSoftware
ArquiteturaSoftware
 
AAB305 - Service Oriented Architecture - wcamb
AAB305 - Service Oriented Architecture - wcambAAB305 - Service Oriented Architecture - wcamb
AAB305 - Service Oriented Architecture - wcamb
 

Semelhante a ESB Mule Uma introdução ao Enterprise Service Bus e sua implementação com Mule ESB

JBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRJBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRElvis Rocha
 
Maratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESBMaratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESBDextra
 
04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)DNAD
 
Middleware Reflexivo
Middleware ReflexivoMiddleware Reflexivo
Middleware Reflexivoelliando dias
 
Workshop do Bem: O mundo das APIs
Workshop do Bem: O mundo das APIsWorkshop do Bem: O mundo das APIs
Workshop do Bem: O mundo das APIsHeider Lopes
 
O MUNDO DAS APIS OTIMIZANDO A INTEGRAÇÃO DE SISTEMAS
O MUNDO DAS APIS OTIMIZANDO A INTEGRAÇÃO DE SISTEMASO MUNDO DAS APIS OTIMIZANDO A INTEGRAÇÃO DE SISTEMAS
O MUNDO DAS APIS OTIMIZANDO A INTEGRAÇÃO DE SISTEMASHeider Lopes
 
Maratona JBoss 2010 - JBossWS
Maratona JBoss 2010 -  JBossWSMaratona JBoss 2010 -  JBossWS
Maratona JBoss 2010 - JBossWSDextra
 
Integração de Sistema com ESB
Integração de Sistema com ESBIntegração de Sistema com ESB
Integração de Sistema com ESBIgo Coelho
 
Introdução ao mule esb para iniciantes
Introdução ao mule esb para iniciantesIntrodução ao mule esb para iniciantes
Introdução ao mule esb para iniciantesJeison Barros
 
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...tdc-globalcode
 
TDC2016SP Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
TDC2016SP  Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...TDC2016SP  Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
TDC2016SP Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...Marcelo Palladino
 
III SDTA - Descomplicando Integrações de Sistemas com Barramento de Serviços
III SDTA - Descomplicando Integrações de Sistemas com Barramento de ServiçosIII SDTA - Descomplicando Integrações de Sistemas com Barramento de Serviços
III SDTA - Descomplicando Integrações de Sistemas com Barramento de ServiçosAtech S.A. | Embraer Group
 
TDC2016SP - Revitalizando aplicações desktop usando CefGlue, MessageBus e Rea...
TDC2016SP - Revitalizando aplicações desktop usando CefGlue, MessageBus e Rea...TDC2016SP - Revitalizando aplicações desktop usando CefGlue, MessageBus e Rea...
TDC2016SP - Revitalizando aplicações desktop usando CefGlue, MessageBus e Rea...tdc-globalcode
 
Integração de sistemas da informação - Abordagens de integração
Integração de sistemas da informação - Abordagens de integraçãoIntegração de sistemas da informação - Abordagens de integração
Integração de sistemas da informação - Abordagens de integraçãoJoao Johanes
 
Desenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EEDesenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EELuan Felipe Knebel
 

Semelhante a ESB Mule Uma introdução ao Enterprise Service Bus e sua implementação com Mule ESB (20)

JBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRJBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
 
Tutorial esb (aulas praticas)
Tutorial esb (aulas praticas)Tutorial esb (aulas praticas)
Tutorial esb (aulas praticas)
 
Maratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESBMaratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESB
 
04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)
 
Middleware Reflexivo
Middleware ReflexivoMiddleware Reflexivo
Middleware Reflexivo
 
Corbawebserves
CorbawebservesCorbawebserves
Corbawebserves
 
Cargas Dinamicas - SSIS
Cargas Dinamicas - SSISCargas Dinamicas - SSIS
Cargas Dinamicas - SSIS
 
Workshop do Bem: O mundo das APIs
Workshop do Bem: O mundo das APIsWorkshop do Bem: O mundo das APIs
Workshop do Bem: O mundo das APIs
 
O MUNDO DAS APIS OTIMIZANDO A INTEGRAÇÃO DE SISTEMAS
O MUNDO DAS APIS OTIMIZANDO A INTEGRAÇÃO DE SISTEMASO MUNDO DAS APIS OTIMIZANDO A INTEGRAÇÃO DE SISTEMAS
O MUNDO DAS APIS OTIMIZANDO A INTEGRAÇÃO DE SISTEMAS
 
Maratona JBoss 2010 - JBossWS
Maratona JBoss 2010 -  JBossWSMaratona JBoss 2010 -  JBossWS
Maratona JBoss 2010 - JBossWS
 
Integração de Sistema com ESB
Integração de Sistema com ESBIntegração de Sistema com ESB
Integração de Sistema com ESB
 
Introdução ao mule esb para iniciantes
Introdução ao mule esb para iniciantesIntrodução ao mule esb para iniciantes
Introdução ao mule esb para iniciantes
 
Palestra Sobre REST
Palestra Sobre RESTPalestra Sobre REST
Palestra Sobre REST
 
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
 
TDC2016SP Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
TDC2016SP  Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...TDC2016SP  Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
TDC2016SP Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
 
Curso jsf
Curso jsfCurso jsf
Curso jsf
 
III SDTA - Descomplicando Integrações de Sistemas com Barramento de Serviços
III SDTA - Descomplicando Integrações de Sistemas com Barramento de ServiçosIII SDTA - Descomplicando Integrações de Sistemas com Barramento de Serviços
III SDTA - Descomplicando Integrações de Sistemas com Barramento de Serviços
 
TDC2016SP - Revitalizando aplicações desktop usando CefGlue, MessageBus e Rea...
TDC2016SP - Revitalizando aplicações desktop usando CefGlue, MessageBus e Rea...TDC2016SP - Revitalizando aplicações desktop usando CefGlue, MessageBus e Rea...
TDC2016SP - Revitalizando aplicações desktop usando CefGlue, MessageBus e Rea...
 
Integração de sistemas da informação - Abordagens de integração
Integração de sistemas da informação - Abordagens de integraçãoIntegração de sistemas da informação - Abordagens de integração
Integração de sistemas da informação - Abordagens de integração
 
Desenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EEDesenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EE
 

Último

Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?
Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?
Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?E-Commerce Brasil
 
Ranking Brasil abril 2024 sites de notícias.pdf
Ranking Brasil abril 2024 sites de notícias.pdfRanking Brasil abril 2024 sites de notícias.pdf
Ranking Brasil abril 2024 sites de notícias.pdfRevista Sociedade Militar
 
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...Welldonelily Skype
 
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...E-Commerce Brasil
 
representações cartograficas - 1 ano.pptx
representações cartograficas - 1 ano.pptxrepresentações cartograficas - 1 ano.pptx
representações cartograficas - 1 ano.pptxCarladeOliveira25
 
Conferência SC 24 | Estratégias de precificação: loja própria e marketplace
Conferência SC 24 | Estratégias de precificação: loja própria e marketplaceConferência SC 24 | Estratégias de precificação: loja própria e marketplace
Conferência SC 24 | Estratégias de precificação: loja própria e marketplaceE-Commerce Brasil
 
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagens
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagensEP GRUPO - Mídia Kit 2024 - conexão de marcas e personagens
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagensLuizPauloFerreira11
 
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...E-Commerce Brasil
 

Último (8)

Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?
Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?
Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?
 
Ranking Brasil abril 2024 sites de notícias.pdf
Ranking Brasil abril 2024 sites de notícias.pdfRanking Brasil abril 2024 sites de notícias.pdf
Ranking Brasil abril 2024 sites de notícias.pdf
 
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...
 
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...
 
representações cartograficas - 1 ano.pptx
representações cartograficas - 1 ano.pptxrepresentações cartograficas - 1 ano.pptx
representações cartograficas - 1 ano.pptx
 
Conferência SC 24 | Estratégias de precificação: loja própria e marketplace
Conferência SC 24 | Estratégias de precificação: loja própria e marketplaceConferência SC 24 | Estratégias de precificação: loja própria e marketplace
Conferência SC 24 | Estratégias de precificação: loja própria e marketplace
 
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagens
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagensEP GRUPO - Mídia Kit 2024 - conexão de marcas e personagens
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagens
 
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...
 

ESB Mule Uma introdução ao Enterprise Service Bus e sua implementação com Mule ESB

  • 1. O elefante e a mula Taffarel de Lima Oliveira
  • 2. Agenda ● O que é ESB? ● Características de um ESB ● Por que usar um ESB? ● Mule ESB ● Utilizando a mula para fazer o trabalho pesado ● Considerações finais
  • 4. O que é um ESB? ESB = Enterprise Service Bus Origem do termo surgiu em 2002 pela Gartner. Roy Schulte, descreveu como uma categoria de software na época.
  • 5. O que é um ESB? "A style of integration architecture that allows communication via a common communication bus that consists of a variety of point-to-point connections between providers and users of services." "An infrastructure that a company uses for integrating services in the application landscape." "An architecture pattern that enables interoperability between heterogeneous environments, using service orientation."
  • 6. O que é um ESB? “ESB is just one architecture” Ross Mason
  • 7. O que é um ESB? Enterprise Service Bus
  • 8. Características de um ESB ● Message Transformation; ● Message Enhancement; ● Protocol Tranformation; ● Service Mapping ● Message Processing ● Process Choreography ● Service Orchestration ● Transaction ● Security ● Routing
  • 9. Por que usar um ESB? ● Arquitetura bem definida; ● Escalável; ● Facilidade de integrar novas aplicações; ● Confiabilidade; ● Facilidade em migrar os sistemas legados;
  • 12. Mule ESB ● Utilizando XML; ● Usando Mule Studio, arrastando os componentes;
  • 15. Mule ESB <?xml version="1.0" encoding="UTF-8"?> <mule xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation" xmlns:spring="http://www.springframework.org/schema/beans" version="CE-3.4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mulehttp.xsd"> <flow name="SimpleExampleFlow1" doc:name="SimpleExampleFlow1"> <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8081" path="php/conference" doc:name="HTTP"/> <set-payload value="PHP Conference 2013" doc:name="Set Payload"/> <echo-component doc:name="Echo"/> </flow> </mule>
  • 16. Mule ESB ● Header da mensagem, que contem os metadados da mensagem; ● Payload da mensagem, que contem a mensagem em si;
  • 17. Mule ESB Components General Components ● ● Web Service Components Echo REST Flow Reference SOAP Logger ● Script Components Groovy Java JavaScript Python Ruby Script
  • 18. Mule ESB Inbound and Outbound Endpoints ● Inbound and Outbound Endpoints ● AJAX Inbound Only Endpoints IMAP Enterprise Edition Database (JDBC) Jetty Enterprise Edition FTP Pop3 File Generic Salesforce (Streaming) HTTP Servlet JMS, VM Twitter (Streaming) Quartz SFTP SSL (TLS), TCP, UDP ● Outbound Only Endpoints SMTP
  • 19. Mule ESB Filters And/Not/Or Custom Exception Expression Filter Ref Idempotent Message Message Message Property Payload Regex Schema Validation Wildcard Filter
  • 20. Mule ESB Routers ● Flow Controls That Do Not Change the Payload All Choice First Successful Round Robin ● Flow Controls That Modify the Payload Collection Aggregator Collection Splitter Custom Aggregator Message Chunk Aggregator Message Chunk Splitter Resequencer Splitter
  • 21. Mule ESB Scops Async Cache Composite Source Foreach Message Enricher Poll Sub Flow Until Successful
  • 22. Mule ESB Error Handling Catch exception strategy Rollback exception strategy Reference exception strategy Choice exception strategy
  • 23. Utilizando a mula para fazer o trabalho pesado!
  • 24. Utilizando a mula para fazer o trabalho pesado! ESB
  • 25. Utilizando a mula para fazer o trabalho pesado!
  • 26. Utilizando a mula para fazer o trabalho pesado!
  • 27. Utilizando a mula para fazer o trabalho pesado!
  • 28. Considerações finais! Arquitetura ESB é uma boa pedida para integrar projetos que: ● Inclua mais do que duas aplicações; ● Permitindo a inclusão de novas aplicações no futuro; ● Baixo custo de manutenção; ● Menos dor de cabeça, na hora em que uma integração para; ● Baixa curva de aprendizado; ● Comunidade ativa e fácil acesso aos core-developers;

Notas do Editor

  1. Era uma vez um elefante, que tinha muita coisa pra fazer no seu dia a dia. Um belo dia, colocaram ele pra transportar grandes cargas para vários locais. O elefante começando a cansar, conhece uma mula. O elefante sagaz e inteligente, percebe que poderia deixar a maioria do trabalho pesado pra mula. Usando os seus melhores meios de comunicação, convence a mula a trabalhar pra ele. O elefante, então podê se concentrar no que sabia fazer de melhor, sem precisar se preocupar em transportar grandes cargas. Virou grande amigo da mula, se tornando parceiros, para quando precisar transportar grandes cargas.
  2. The concept of the ESB architecture is that you integrate different applications by putting a communication bus between them and then enable each application to talk to the bus. This decouples systems from each other, allowing them to communicate without having a dependency or knowledge of other systems on the bus. The concept of ESB was born out of the need to move away from point-to-point integration, which becomes brittle and hard to manage over time. - See more at: http://blogs.mulesoft.org/esb-or-not-to-esb-revisited-part-1/#sthash.nxLzrsSn.dpuf
  3. The concept of the ESB architecture is that you integrate different applications by putting a communication bus between them and then enable each application to talk to the bus. This decouples systems from each other, allowing them to communicate without having a dependency or knowledge of other systems on the bus. The concept of ESB was born out of the need to move away from point-to-point integration, which becomes brittle and hard to manage over time. - See more at: http://blogs.mulesoft.org/esb-or-not-to-esb-revisited-part-1/#sthash.nxLzrsSn.dpuf
  4. The concept of the ESB architecture is that you integrate different applications by putting a communication bus between them and then enable each application to talk to the bus. This decouples systems from each other, allowing them to communicate without having a dependency or knowledge of other systems on the bus. The concept of ESB was born out of the need to move away from point-to-point integration, which becomes brittle and hard to manage over time. - See more at: http://blogs.mulesoft.org/esb-or-not-to-esb-revisited-part-1/#sthash.nxLzrsSn.dpuf
  5. Mule is a Java-based enterprise service bus (ESB) and integration platform that allows developers to quickly and easily connect applications to exchange data following the service-oriented architecture (SOA) methodology. Mule enables easy integration of existing systems, regardless of the different technologies
  6. At the simplest level, Mule applications accept and process messages through several Lego-block-like message processors plugged together in what we call a flow. Understanding the basic message structure and flow architecture is key to understanding Mule. Essentially every Mule flow contains a series of building blocks that accept, then transform and process messages.
  7. At the simplest level, Mule applications accept and process messages through several Lego-block-like message processors plugged together in what we call a flow. Understanding the basic message structure and flow architecture is key to understanding Mule. Essentially every Mule flow contains a series of building blocks that accept, then transform and process messages.
  8. At the simplest level, Mule applications accept and process messages through several Lego-block-like message processors plugged together in what we call a flow. Understanding the basic message structure and flow architecture is key to understanding Mule. Essentially every Mule flow contains a series of building blocks that accept, then transform and process messages.
  9. At the simplest level, Mule applications accept and process messages through several Lego-block-like message processors plugged together in what we call a flow. Understanding the basic message structure and flow architecture is key to understanding Mule. Essentially every Mule flow contains a series of building blocks that accept, then transform and process messages.
  10. At the simplest level, Mule applications accept and process messages through several Lego-block-like message processors plugged together in what we call a flow. Understanding the basic message structure and flow architecture is key to understanding Mule. Essentially every Mule flow contains a series of building blocks that accept, then transform and process messages.
  11. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  12. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  13. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  14. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  15. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  16. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  17. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  18. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  19. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  20. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  21. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  22. The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  23. The Mule message is the data that passes through your application via one or more flows. It has two important parts: