Architecting cloud-enabled applications using Spring-Integration 2.x

Post on 22-Apr-2015

2.786 views 0 download

description

Minha apresentação no JavaOne Brasil 2011 em São Paulo/SP. Trata-se de uma introdução aos Enterprise Integration Patterns (EIPs) e à uma implementação de ESB, o Spring Integration 2.x

Transcript of Architecting cloud-enabled applications using Spring-Integration 2.x

Architecting cloud-enabled applications using Spring-

Integration 2.xEdson Yanaga

Desenvolvedor e Consultorwww.yanaga.com.br

edson@yanaga.com.br@edsonyanaga

Wednesday, December 14, 11

Edson Yanaga• Bacharel em Ciência da Computação/UEM

• Mestre em Engenharia Elétrica/UTFPR

• Desenvolvedor Java desde 1997

• Administrador Unix desde 1999

• Oracle Certified Professional, Java Platform, Enterprise Edition 6 Enterprise JavaBeans Developer

• Certified ScrumMaster

• Sun Certified Developer for Java Web Services 5

• Sun Certified Specialist for NetBeans IDE

• Sun Certified Web Component Developer for J2EE 1.4

• Sun Certified Programmer for Java 2 Platform 1.4

Wednesday, December 14, 11

O que é Enterprise

Integration?Tarefa de fazer com

que aplicações separadas trabalhem juntas para fornecer uma funcionalidade

Wednesday, December 14, 11

Critérios de integração

• Acoplamento

• Simplicidade

• Tecnologia

• Formato dos dados

• Sazonalidade dos dados

• Assincronicidade

Wednesday, December 14, 11

Opções de integraçãoWednesday, December 14, 11

Cloud Computing

Integração e portabilidade de

aplicações

Wednesday, December 14, 11

“O Livro”Wednesday, December 14, 11

Aplicação

Wednesday, December 14, 11

Aplicação Splitter Router

Wednesday, December 14, 11

Aplicação Splitter Router

Wednesday, December 14, 11

Aplicação Splitter Router

Wednesday, December 14, 11

Aplicação Splitter Router

Wednesday, December 14, 11

Aplicação Splitter Router

Wednesday, December 14, 11

Splitter Router

Wednesday, December 14, 11

Splitter Router

Wednesday, December 14, 11

Splitter Router

Wednesday, December 14, 11

Splitter Router

Wednesday, December 14, 11

Splitter Router

Wednesday, December 14, 11

Splitter Router

Wednesday, December 14, 11

Splitter Router

Wednesday, December 14, 11

Router Aggregator

Wednesday, December 14, 11

Router Aggregator

Wednesday, December 14, 11

Router Aggregator

Wednesday, December 14, 11

Router Aggregator

Wednesday, December 14, 11

Router Aggregator

Wednesday, December 14, 11

Router Aggregator

Wednesday, December 14, 11

Router Aggregator

Wednesday, December 14, 11

Router Aggregator

Wednesday, December 14, 11

Router Aggregator

Wednesday, December 14, 11

Outros Endpoints

• Filter: decide se a mensagem continua ou não

• Transformer: transforma o conteúdo de uma mensagem de um formato para outro formato

• Delayer: atrasa a entrega da mensagem

• ...

Wednesday, December 14, 11

Spring Integration

• É a implementação dos Enterprise Integration Patterns fornecida pela SpringSource

Wednesday, December 14, 11

<XML/>Configuração

através de XML

Wednesday, December 14, 11

XML na dose certa

Quanto uma criança ganha um martelo,

o mundo inteiro torna-se pregos...

Wednesday, December 14, 11

AWSPlataforma de

cloud computing (IaaS) da Amazon

Wednesday, December 14, 11

Principais Serviços

• S3 (Simple Storage Service)

• EC2 (Elastic Compute Cloud)

• SQS (Simple Queue Service)

• ...

Wednesday, December 14, 11

DEMO

Wednesday, December 14, 11

#javaonebrasil

Wednesday, December 14, 11

#javaonebrasil Transformer(JSON -> POJO)

Wednesday, December 14, 11

#javaonebrasil Transformer(JSON -> POJO)

Splitter(urls)

Wednesday, December 14, 11

Transformer(JSON -> POJO)

Splitter(urls)

Filter(idempotente)

Wednesday, December 14, 11

Filter(idempotente)

ServiceActivator(SQS)

Wednesday, December 14, 11

ServiceActivator(S3)

Wednesday, December 14, 11

Let the code begin...

Wednesday, December 14, 11