SlideShare uma empresa Scribd logo
Copyright 2015 Google Inc
TechTalk
Arquitetura monolítica
à orientação a serviços
Ryan Padilha (ryan.padilha@gmail.com)
Apresentação técnica arquitetura orientada a serviços
Copyright 2015 Google Inc
Simplesmente apaixonado por tecnologia
Fundador e Instrutor do Coding4Fun Cursos Online
http://br.linkedin.com/in/ryanpadilha
- Movido a desafios!
- Graduado em sistema de informação.
- Especialista em integração de aplicações.
- Autodidata, perseverante, rápido aprendizado e adaptação.
- "Inspirar a transformação de conhecimento em software funcional"
Ryan Padilha
Copyright 2015 Google Inc
Agenda
Aplicação monolítica
Desenho de solução
1
2
Arquitetura orientada a serviços3
• Descritivo
• Definição de modelos de aplicação monolítica e prática de deploy.
• Os desafios da escalabilidade e alocação de recursos em regras de negócios.
• O conceito de arquitetura orientada a serviços e componentização.
Copyright 2015 Google Inc
Aplicação monolítica
• https://martinfowler.com/articles/microservices.html
Copyright 2015 Google Inc
Aplicação monolítica
• Modelo:
• Simples de desenvolver
• Testar e realizar deploy
• Aumento na complexidade do negócio
• Custos desnecessários ao escalar - clonagem
• Efeito colateral:
• Re-deploy da aplicação inteira
• Tempo de uptime afetado
• Ambiente de desenvolvimento complexo
Copyright 2015 Google Inc
Escalabilidade
• The Scale Cube - http://microservices.io/articles/scalecube.html
Copyright 2015 Google Inc
Desenho de solução
• Modelo:
• Conjunto de pequenos serviços
• Foco em desenvolvimento de funcionalidades
• Tecnologias heterogêneas e poliglotas
• Componentização e reuso de regras de negócios
• Deploy independente
• Escalabilidade apenas em gargalos da aplicação
Copyright 2015 Google Inc
Desenho de solução
Copyright 2015 Google Inc
Desenho de solução
• Definição:
• Funcionalidades co-rrelacionadas agrupadas
• Baixo acoplamento e alta coesão
• Estudar e delimitar o escopo do serviço
• Modelagem orientada a funcionalidade
• Definição de blocos em módulos
• Chamada a API remotas
• API Gateway Pattern - Otimização e agregação
• Síncrono: request/response
• Assíncrono: request/callback
Copyright 2015 Google Inc
Desenho de solução
• REST:
• Mecanismo síncrono
• Desacoplamento de interface e modelo de dados
• Semântica HTTP
• Mensageria:
• Mecanismo assíncrono (eventos)
• Orientado a coreografia e baixo acoplamento
• Publish/Subscribe com Message Broker
Copyright 2015 Google Inc
Desenho de solução
Copyright 2015 Google Inc
Arquitetura SOA
• Princípios de serviços:
1. São reutilizáveis
2. Compartilham um contrato formal
3. Possuem um baixo acoplamento
4. Abstraem a lógica
5. São capazes de se compor
6. São autônomos
7. Evitam alocação de recursos por longo tempo
8. São capazes de serem descobertos
Copyright 2015 Google Inc
Arquitetura SOA
Copyright 2015 Google Inc
Arquitetura SOA
Copyright 2015 Google Inc
Arquitetura SOA
Copyright 2015 Google Inc
Meu muito obrigado!
“Quando você descobre algo,
você se sente como se estivesse
apaixonado”. Wozniak

Mais conteúdo relacionado

PDF
Microservices - Arquitetura, Ecossistema e Desafios
Ryan Padilha
 
PPT
Apresentação acadêmica RASEA
Cleverson Sacramento
 
PDF
Repensando o ESB: sua arquitetura SOA, usando APIs
Fábio Rosato
 
PDF
Serverless em Go
Elton Minetto
 
PDF
Angular Presentation - Google Cloud Extended
Kevin Wingi
 
ODP
CakeSP - Specta Platform: CakePHP, Flex, Fake
Specta TI
 
PDF
Vida longa para SOA com microservices
Fábio Rosato
 
PPTX
Powerlogic ISV Partner
Powerlogic Consultoria e Sistemas
 
Microservices - Arquitetura, Ecossistema e Desafios
Ryan Padilha
 
Apresentação acadêmica RASEA
Cleverson Sacramento
 
Repensando o ESB: sua arquitetura SOA, usando APIs
Fábio Rosato
 
Serverless em Go
Elton Minetto
 
Angular Presentation - Google Cloud Extended
Kevin Wingi
 
CakeSP - Specta Platform: CakePHP, Flex, Fake
Specta TI
 
Vida longa para SOA com microservices
Fábio Rosato
 
Powerlogic ISV Partner
Powerlogic Consultoria e Sistemas
 

Semelhante a Arquitetura monolítica à orientação a serviços (20)

PPTX
Salesforce Venha aprender Mulesoft - Dia 10
Mauricio Alexandre Silva
 
PPTX
Venha Aprender Sobre MuleSoft - Dia 10.pptx
Renato de Oliveira
 
PDF
Desafio de crescer
Guilherme
 
PPTX
A framework for collaborative applications en
Pedro Correia
 
PDF
Python em Ambientes Distribuídos - Arquitetura Moderna
Ryan Padilha
 
PDF
Percepções de uma viagem em dois mundos: Java e Python
Ryan Padilha
 
PDF
Workshop soa, microservices e devops
Diego Pacheco
 
PDF
Aula 2 - Modelos de processos
Leinylson Fontinele
 
PDF
Introdução a Arquitetura Orientada a Serviços
Igor Takenami
 
PDF
Microservices
Flávio Secchieri Mariotti
 
PDF
WSO2 - Visão Geral de Negócios
Edgar Silva
 
PDF
Enterprise Architcture: Service Oriented Architecture Case
Werther Krause
 
PPTX
API Gateways DevOps Experience Abril-2024.pptx
Walter Coan
 
PDF
APIs Atributos e Tecnologia
Fábio Rosato
 
PPTX
Salesforce Venha Aprender Mulesoft - Dia 04
Mauricio Alexandre Silva
 
PPTX
Venha Aprender Sobrer MuleSoft - Dia 04.pptx
Renato de Oliveira
 
PDF
TOGAF em Ação
Blue Hawk - B&IT Management
 
PPTX
TDC 2010 - SharePoint Server 2010
Hélio Sá Moreira
 
PDF
Overview Governança SOA - HP Brazil
Norberto Enomoto
 
PDF
DDD
Thiago Veiga
 
Salesforce Venha aprender Mulesoft - Dia 10
Mauricio Alexandre Silva
 
Venha Aprender Sobre MuleSoft - Dia 10.pptx
Renato de Oliveira
 
Desafio de crescer
Guilherme
 
A framework for collaborative applications en
Pedro Correia
 
Python em Ambientes Distribuídos - Arquitetura Moderna
Ryan Padilha
 
Percepções de uma viagem em dois mundos: Java e Python
Ryan Padilha
 
Workshop soa, microservices e devops
Diego Pacheco
 
Aula 2 - Modelos de processos
Leinylson Fontinele
 
Introdução a Arquitetura Orientada a Serviços
Igor Takenami
 
WSO2 - Visão Geral de Negócios
Edgar Silva
 
Enterprise Architcture: Service Oriented Architecture Case
Werther Krause
 
API Gateways DevOps Experience Abril-2024.pptx
Walter Coan
 
APIs Atributos e Tecnologia
Fábio Rosato
 
Salesforce Venha Aprender Mulesoft - Dia 04
Mauricio Alexandre Silva
 
Venha Aprender Sobrer MuleSoft - Dia 04.pptx
Renato de Oliveira
 
TDC 2010 - SharePoint Server 2010
Hélio Sá Moreira
 
Overview Governança SOA - HP Brazil
Norberto Enomoto
 
Anúncio

Mais de Ryan Padilha (7)

PDF
Startups - O novo paradigma da administração
Ryan Padilha
 
PDF
Flask e Docker - rumo a AWS!
Ryan Padilha
 
PDF
Design Pattern MVC – Arquitetura de Software Coesa e Flexível
Ryan Padilha
 
PDF
Orientação a Objetos no Delphi - Controle de Estoque (III)
Ryan Padilha
 
PDF
Orientação a Objetos no Delphi - Controle de Estoque (II)
Ryan Padilha
 
PDF
Orientação a Objetos no Delphi - Por onde começar (I)
Ryan Padilha
 
PDF
Plataforma Android: Produtividade Além do SDK
Ryan Padilha
 
Startups - O novo paradigma da administração
Ryan Padilha
 
Flask e Docker - rumo a AWS!
Ryan Padilha
 
Design Pattern MVC – Arquitetura de Software Coesa e Flexível
Ryan Padilha
 
Orientação a Objetos no Delphi - Controle de Estoque (III)
Ryan Padilha
 
Orientação a Objetos no Delphi - Controle de Estoque (II)
Ryan Padilha
 
Orientação a Objetos no Delphi - Por onde começar (I)
Ryan Padilha
 
Plataforma Android: Produtividade Além do SDK
Ryan Padilha
 
Anúncio

Último (16)

PPTX
Curso de Java 7 - (ArrayList, Collections,(Set, List, Queue, Map)).pptx
Anderson Maciel
 
PPTX
Curso de Java 5 - (Strings) Tipo de Dados.pptx
Anderson Maciel
 
PDF
Certificado em Redes Neurais Artificiais em Python
CaioSilva506151
 
PPTX
SISTEMA DE INFORMAÇÃO EM SAÚDE_UEPA.pptx
fabriciolabgeo91411
 
PPTX
aplicativopenseira.pptx Aplicativo que organiza Pensamentos - Peça Publicitária
StelaNorie1
 
PPTX
Curso de Java 4 - (Orientação a Objetos).pptx
Anderson Maciel
 
PPTX
Curso de Java 3 - (Estruturas de Controle, Decisão, Loop, Procedimento).pptx
Anderson Maciel
 
PPTX
22 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
PDF
tutor eletronico para seguranca de bebes e criancas
matheusjosesilva934
 
PPTX
Curso de Java 2 - (PrimeiroPrograma, Variáveis, Tipos e Operadores.pptx
Anderson Maciel
 
PPTX
21 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
PPT
Sistemas de Informação em Saúde Aplicada.ppt
fabriciolabgeo91411
 
PPTX
Curso de Java 6 - (Números, Data e Hora).pptx
Anderson Maciel
 
PPTX
Curso de Java 1 - (Introdução Geral).pptx
Anderson Maciel
 
PPTX
Computacao-e-Tecnologias-Digitais-Por-Que-Aprender.pptx
RobertaOliveiradaFon1
 
PPTX
Curso de Java 8 - (Tratamento de Exceções, (try-catch-finally)).pptx
Anderson Maciel
 
Curso de Java 7 - (ArrayList, Collections,(Set, List, Queue, Map)).pptx
Anderson Maciel
 
Curso de Java 5 - (Strings) Tipo de Dados.pptx
Anderson Maciel
 
Certificado em Redes Neurais Artificiais em Python
CaioSilva506151
 
SISTEMA DE INFORMAÇÃO EM SAÚDE_UEPA.pptx
fabriciolabgeo91411
 
aplicativopenseira.pptx Aplicativo que organiza Pensamentos - Peça Publicitária
StelaNorie1
 
Curso de Java 4 - (Orientação a Objetos).pptx
Anderson Maciel
 
Curso de Java 3 - (Estruturas de Controle, Decisão, Loop, Procedimento).pptx
Anderson Maciel
 
22 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
tutor eletronico para seguranca de bebes e criancas
matheusjosesilva934
 
Curso de Java 2 - (PrimeiroPrograma, Variáveis, Tipos e Operadores.pptx
Anderson Maciel
 
21 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
Sistemas de Informação em Saúde Aplicada.ppt
fabriciolabgeo91411
 
Curso de Java 6 - (Números, Data e Hora).pptx
Anderson Maciel
 
Curso de Java 1 - (Introdução Geral).pptx
Anderson Maciel
 
Computacao-e-Tecnologias-Digitais-Por-Que-Aprender.pptx
RobertaOliveiradaFon1
 
Curso de Java 8 - (Tratamento de Exceções, (try-catch-finally)).pptx
Anderson Maciel
 

Arquitetura monolítica à orientação a serviços

  • 1. Copyright 2015 Google Inc TechTalk Arquitetura monolítica à orientação a serviços Ryan Padilha ([email protected]) Apresentação técnica arquitetura orientada a serviços
  • 2. Copyright 2015 Google Inc Simplesmente apaixonado por tecnologia Fundador e Instrutor do Coding4Fun Cursos Online http://br.linkedin.com/in/ryanpadilha - Movido a desafios! - Graduado em sistema de informação. - Especialista em integração de aplicações. - Autodidata, perseverante, rápido aprendizado e adaptação. - "Inspirar a transformação de conhecimento em software funcional" Ryan Padilha
  • 3. Copyright 2015 Google Inc Agenda Aplicação monolítica Desenho de solução 1 2 Arquitetura orientada a serviços3 • Descritivo • Definição de modelos de aplicação monolítica e prática de deploy. • Os desafios da escalabilidade e alocação de recursos em regras de negócios. • O conceito de arquitetura orientada a serviços e componentização.
  • 4. Copyright 2015 Google Inc Aplicação monolítica • https://martinfowler.com/articles/microservices.html
  • 5. Copyright 2015 Google Inc Aplicação monolítica • Modelo: • Simples de desenvolver • Testar e realizar deploy • Aumento na complexidade do negócio • Custos desnecessários ao escalar - clonagem • Efeito colateral: • Re-deploy da aplicação inteira • Tempo de uptime afetado • Ambiente de desenvolvimento complexo
  • 6. Copyright 2015 Google Inc Escalabilidade • The Scale Cube - http://microservices.io/articles/scalecube.html
  • 7. Copyright 2015 Google Inc Desenho de solução • Modelo: • Conjunto de pequenos serviços • Foco em desenvolvimento de funcionalidades • Tecnologias heterogêneas e poliglotas • Componentização e reuso de regras de negócios • Deploy independente • Escalabilidade apenas em gargalos da aplicação
  • 8. Copyright 2015 Google Inc Desenho de solução
  • 9. Copyright 2015 Google Inc Desenho de solução • Definição: • Funcionalidades co-rrelacionadas agrupadas • Baixo acoplamento e alta coesão • Estudar e delimitar o escopo do serviço • Modelagem orientada a funcionalidade • Definição de blocos em módulos • Chamada a API remotas • API Gateway Pattern - Otimização e agregação • Síncrono: request/response • Assíncrono: request/callback
  • 10. Copyright 2015 Google Inc Desenho de solução • REST: • Mecanismo síncrono • Desacoplamento de interface e modelo de dados • Semântica HTTP • Mensageria: • Mecanismo assíncrono (eventos) • Orientado a coreografia e baixo acoplamento • Publish/Subscribe com Message Broker
  • 11. Copyright 2015 Google Inc Desenho de solução
  • 12. Copyright 2015 Google Inc Arquitetura SOA • Princípios de serviços: 1. São reutilizáveis 2. Compartilham um contrato formal 3. Possuem um baixo acoplamento 4. Abstraem a lógica 5. São capazes de se compor 6. São autônomos 7. Evitam alocação de recursos por longo tempo 8. São capazes de serem descobertos
  • 13. Copyright 2015 Google Inc Arquitetura SOA
  • 14. Copyright 2015 Google Inc Arquitetura SOA
  • 15. Copyright 2015 Google Inc Arquitetura SOA
  • 16. Copyright 2015 Google Inc Meu muito obrigado! “Quando você descobre algo, você se sente como se estivesse apaixonado”. Wozniak