O Elefante e a Mula

  • 464 views
Uploaded on

How to integrate multiple applications using ESB

How to integrate multiple applications using ESB

More in: Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • me parece muito semelhante a SOA...
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
464
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
5
Comments
1
Likes
3

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • 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.
  • 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
  • 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
  • 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
  • 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
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:
  • The Mule message is the data that passes through your application via one or more flows. It has two important parts:

Transcript

  • 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
  • 3. Era uma vez...
  • 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;
  • 10. Mule ESB
  • 11. Mule ESB
  • 12. Mule ESB ● Utilizando XML; ● Usando Mule Studio, arrastando os componentes;
  • 13. Mule ESB
  • 14. Mule ESB
  • 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;
  • 29. Contatos taffarelo3@gmail.com Github.com.br/taffarel https://coderwall.com/taffarel OBRIGADO!!