SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
Copyright 2015 Google Inc
Python Floripa 23
Python em
ambientes distribuídos
Ryan Padilha (ryan.padilha@gmail.com)
Os desafios modernos da escalabilidade
Copyright 2015 Google Inc
Simply in love with technology.
JavaEE expert, SOA specialist and technical writer.
Experience of 12+ years in solution design and development software.
Working nowadays on Software Architecture, Cloud Computing and Microservices.
http://br.linkedin.com/in/ryanpadilha
Ryan Padilha
Copyright 2015 Google Inc
Agenda
Introdução
Arquitetura Moderna
1
2
Ambiente de Execução3
• Descritivo
• Definição de estilo arquitetural baseado em computação distribuída.
• Abordagem de Python como middleware de integração com processamento de serviços em Java..
Demo4
Copyright 2015 Google Inc
Introdução
Copyright 2015 Google Inc
Introdução
• Afinal o que define o termo Microservices ‘14 ?
• É um estilo arquitetural
• Conjunto de pequenos serviços (componentes)
• Execução em processo individual
• Mecanismo leve de comunicação através de API de recursos HTTP
• Desenvolvimento baseado em capacidades de negócios
• Deploy independente automatizado
• Gerenciamento centralizado mínimo
• Projetado para ser resiliente e design evolutivo
• Tecnologias heterogêneas e armazenamento poliglota
• https://martinfowler.com/articles/microservices.html
Copyright 2015 Google Inc
Introdução
• The Scale Cube - http://microservices.io/articles/scalecube.html
Copyright 2015 Google Inc
O mundo mudou, e agora ?
Copyright 2015 Google Inc
Arquitetura Moderna
• Características principais:
• Modelo de comunicação - síncrono / assíncrono
• Controle de concorrência - multi-requests
• Resiliência e tolerância a falhas
• Infra-estrutura como código - “buildar máquinas”
• Cloud Computing heterogênea
• Persistência poliglota
• Múltiplas linguagens de programação
• Qualquer dispositivo é conectado a rede
“Não há uma única arquitetura para todos os projetos”.
Copyright 2015 Google Inc
Arquitetura Moderna
• Python e Java - O poder de ambos ao nosso dispor
• Estável e madura
• Escalável, ideal para qualquer projeto
• Simples ao mesmo tempo elegante
• Rápido desenvolvimento
• Bibliotecas poderosas
• Multiplataforma orientada a rede
• Interpretada / Compilada (bytecode)
• Vasta comunidade de desenvolvedores
Copyright 2015 Google Inc
• Middleware, Python ?
• Roteamento de request para diferentes objetos
• Balanceamento de carga
• Gateway API Aggregation
• Pós-processamento
• Interface padronizada de comunicação
• Transparência e governança de recursos
Arquitetura Moderna
Copyright 2015 Google Inc
Arquitetura Moderna
Copyright 2015 Google Inc
• Arquitetura Orientada a Evento - AMQP Protocol
• RabbitMQ - Java Library ou Python Celery
Arquitetura Moderna
Copyright 2015 Google Inc
• Controle de concorrência
• Java Executors ou Python Eventlet
Arquitetura Moderna
Copyright 2015 Google Inc
Ambiente de Execução
Copyright 2015 Google Inc
Demo
Copyright 2015 Google Inc
Meu muito obrigado!
“Quando você descobre algo,
você se sente como se estivesse
apaixonado”. Wozniak

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Percepções de uma viagem em dois mundos: Java e Python
Percepções de uma viagem em dois mundos:  Java e PythonPercepções de uma viagem em dois mundos:  Java e Python
Percepções de uma viagem em dois mundos: Java e Python
 
Blazor + Azure Functions - Caqui Coders #36
Blazor + Azure Functions - Caqui Coders #36Blazor + Azure Functions - Caqui Coders #36
Blazor + Azure Functions - Caqui Coders #36
 
API management: um aliado para construção de APIs
API management: um aliado para construção de APIsAPI management: um aliado para construção de APIs
API management: um aliado para construção de APIs
 
Conhecimentos para tomar atitude e migrar sua aplicação para asp.net core
Conhecimentos para tomar atitude e migrar sua aplicação para asp.net coreConhecimentos para tomar atitude e migrar sua aplicação para asp.net core
Conhecimentos para tomar atitude e migrar sua aplicação para asp.net core
 
Introdução ao WSO2 API Microgateway 3.1
Introdução ao WSO2 API Microgateway 3.1Introdução ao WSO2 API Microgateway 3.1
Introdução ao WSO2 API Microgateway 3.1
 
TDC2018SP | Trilha Arq .Net - Aplicacoes Multi-Tenant no Asp.Net Core
TDC2018SP | Trilha Arq .Net - Aplicacoes Multi-Tenant no Asp.Net CoreTDC2018SP | Trilha Arq .Net - Aplicacoes Multi-Tenant no Asp.Net Core
TDC2018SP | Trilha Arq .Net - Aplicacoes Multi-Tenant no Asp.Net Core
 
Sobrevoando os serviços do Azure | TDC Florianópolis Online 2020
Sobrevoando os serviços do Azure | TDC Florianópolis Online 2020Sobrevoando os serviços do Azure | TDC Florianópolis Online 2020
Sobrevoando os serviços do Azure | TDC Florianópolis Online 2020
 
Alternativas para a Implementação de Microservices no Microsoft Azure - Novem...
Alternativas para a Implementação de Microservices no Microsoft Azure - Novem...Alternativas para a Implementação de Microservices no Microsoft Azure - Novem...
Alternativas para a Implementação de Microservices no Microsoft Azure - Novem...
 
Machine Learning para devs com ML.NET
Machine Learning para devs com ML.NETMachine Learning para devs com ML.NET
Machine Learning para devs com ML.NET
 
Tdc2019 intro event-sourcing_kafka
Tdc2019   intro event-sourcing_kafkaTdc2019   intro event-sourcing_kafka
Tdc2019 intro event-sourcing_kafka
 
Mulesoft Meetup Latam Summit Brazil
Mulesoft Meetup Latam Summit BrazilMulesoft Meetup Latam Summit Brazil
Mulesoft Meetup Latam Summit Brazil
 
Azure DevOps Pipeline
Azure DevOps PipelineAzure DevOps Pipeline
Azure DevOps Pipeline
 
Arquitetura monolítica à orientação a serviços
Arquitetura monolítica à orientação a serviçosArquitetura monolítica à orientação a serviços
Arquitetura monolítica à orientação a serviços
 
Construindo um micro-serviço Java 100% funcional em 15 minutos
Construindo um micro-serviço Java 100% funcional em 15 minutosConstruindo um micro-serviço Java 100% funcional em 15 minutos
Construindo um micro-serviço Java 100% funcional em 15 minutos
 
APIs REST com Apigility
APIs REST com ApigilityAPIs REST com Apigility
APIs REST com Apigility
 
Desenvolvimento de aplicações para o Microsoft Azure utilizando C#
Desenvolvimento de aplicações para o Microsoft Azure utilizando C#Desenvolvimento de aplicações para o Microsoft Azure utilizando C#
Desenvolvimento de aplicações para o Microsoft Azure utilizando C#
 
Microsoft Operations Management Suite - OMS
Microsoft Operations Management Suite - OMSMicrosoft Operations Management Suite - OMS
Microsoft Operations Management Suite - OMS
 
Migracao gae-openshift
Migracao gae-openshiftMigracao gae-openshift
Migracao gae-openshift
 
Clean Architecture com .NET Core
Clean Architecture com .NET CoreClean Architecture com .NET Core
Clean Architecture com .NET Core
 
Workshop anypoint service mesh
Workshop   anypoint service meshWorkshop   anypoint service mesh
Workshop anypoint service mesh
 

Semelhante a Python em Ambientes Distribuídos - Arquitetura Moderna

Desafio de crescer
Desafio de crescerDesafio de crescer
Desafio de crescer
Guilherme
 
Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSource
tdc-globalcode
 

Semelhante a Python em Ambientes Distribuídos - Arquitetura Moderna (20)

Tecnologias Microsoft, Open Source, Linux, Docker e a Nuvem - WTT-2019 - Mack...
Tecnologias Microsoft, Open Source, Linux, Docker e a Nuvem - WTT-2019 - Mack...Tecnologias Microsoft, Open Source, Linux, Docker e a Nuvem - WTT-2019 - Mack...
Tecnologias Microsoft, Open Source, Linux, Docker e a Nuvem - WTT-2019 - Mack...
 
Flask e Docker - rumo a AWS!
Flask e Docker - rumo a AWS!Flask e Docker - rumo a AWS!
Flask e Docker - rumo a AWS!
 
Desafio de crescer
Desafio de crescerDesafio de crescer
Desafio de crescer
 
TDC2018SP | Trilha Arquitetura Corporativa - Arquitetura Agil. Habilitando ar...
TDC2018SP | Trilha Arquitetura Corporativa - Arquitetura Agil. Habilitando ar...TDC2018SP | Trilha Arquitetura Corporativa - Arquitetura Agil. Habilitando ar...
TDC2018SP | Trilha Arquitetura Corporativa - Arquitetura Agil. Habilitando ar...
 
WSO2 - Visão Geral de Negócios
WSO2 - Visão Geral de NegóciosWSO2 - Visão Geral de Negócios
WSO2 - Visão Geral de Negócios
 
Opções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e ArquiteturasOpções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e Arquiteturas
 
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
 
Arquitetura de Microservicos
Arquitetura de MicroservicosArquitetura de Microservicos
Arquitetura de Microservicos
 
Sua aplicação nas nuvens com open shift
Sua aplicação nas nuvens com open shiftSua aplicação nas nuvens com open shift
Sua aplicação nas nuvens com open shift
 
Web tools pt-br
Web tools pt-brWeb tools pt-br
Web tools pt-br
 
Nuvens com Ênfase em Azure - Locatech + Locaneers - Abril-2019
Nuvens com Ênfase em Azure - Locatech + Locaneers - Abril-2019Nuvens com Ênfase em Azure - Locatech + Locaneers - Abril-2019
Nuvens com Ênfase em Azure - Locatech + Locaneers - Abril-2019
 
Web Tools Pt Br
Web Tools Pt BrWeb Tools Pt Br
Web Tools Pt Br
 
Um método para o desenvolvimento de software baseado em microsserviços
Um método para o desenvolvimento de software baseado em microsserviçosUm método para o desenvolvimento de software baseado em microsserviços
Um método para o desenvolvimento de software baseado em microsserviços
 
Latinoware 2019 - Kubernetes a plataforma de grandes ideias
Latinoware 2019 - Kubernetes a plataforma de grandes ideiasLatinoware 2019 - Kubernetes a plataforma de grandes ideias
Latinoware 2019 - Kubernetes a plataforma de grandes ideias
 
DevOps & Docker com a stack Microsoft
DevOps & Docker com a stack MicrosoftDevOps & Docker com a stack Microsoft
DevOps & Docker com a stack Microsoft
 
.NET, Microsoft Azure e Tecnologias Open Source - Americana Tech Conf - Novem...
.NET, Microsoft Azure e Tecnologias Open Source - Americana Tech Conf - Novem....NET, Microsoft Azure e Tecnologias Open Source - Americana Tech Conf - Novem...
.NET, Microsoft Azure e Tecnologias Open Source - Americana Tech Conf - Novem...
 
Alternativas para a Implementação de Microservices no Microsoft Azure - Jane...
 Alternativas para a Implementação de Microservices no Microsoft Azure - Jane... Alternativas para a Implementação de Microservices no Microsoft Azure - Jane...
Alternativas para a Implementação de Microservices no Microsoft Azure - Jane...
 
Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...
Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...
Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...
 
MIT - Estudo de Caso utilizando Cloud & DevOps
MIT - Estudo de Caso utilizando Cloud & DevOps  MIT - Estudo de Caso utilizando Cloud & DevOps
MIT - Estudo de Caso utilizando Cloud & DevOps
 
Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSource
 

Mais de Ryan Padilha (6)

Startups - O novo paradigma da administração
Startups - O novo paradigma da administraçãoStartups - O novo paradigma da administração
Startups - O novo paradigma da administração
 
Design Pattern MVC – Arquitetura de Software Coesa e Flexível
Design Pattern MVC – Arquitetura de Software Coesa e FlexívelDesign Pattern MVC – Arquitetura de Software Coesa e Flexível
Design Pattern MVC – Arquitetura de Software Coesa e Flexível
 
Orientação a Objetos no Delphi - Controle de Estoque (III)
Orientação a Objetos no Delphi - Controle de Estoque (III)Orientação a Objetos no Delphi - Controle de Estoque (III)
Orientação a Objetos no Delphi - Controle de Estoque (III)
 
Orientação a Objetos no Delphi - Controle de Estoque (II)
Orientação a Objetos no Delphi - Controle de Estoque (II)Orientação a Objetos no Delphi - Controle de Estoque (II)
Orientação a Objetos no Delphi - Controle de Estoque (II)
 
Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)
 
Plataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDKPlataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDK
 

Python em Ambientes Distribuídos - Arquitetura Moderna

  • 1. Copyright 2015 Google Inc Python Floripa 23 Python em ambientes distribuídos Ryan Padilha (ryan.padilha@gmail.com) Os desafios modernos da escalabilidade
  • 2. Copyright 2015 Google Inc Simply in love with technology. JavaEE expert, SOA specialist and technical writer. Experience of 12+ years in solution design and development software. Working nowadays on Software Architecture, Cloud Computing and Microservices. http://br.linkedin.com/in/ryanpadilha Ryan Padilha
  • 3. Copyright 2015 Google Inc Agenda Introdução Arquitetura Moderna 1 2 Ambiente de Execução3 • Descritivo • Definição de estilo arquitetural baseado em computação distribuída. • Abordagem de Python como middleware de integração com processamento de serviços em Java.. Demo4
  • 4. Copyright 2015 Google Inc Introdução
  • 5. Copyright 2015 Google Inc Introdução • Afinal o que define o termo Microservices ‘14 ? • É um estilo arquitetural • Conjunto de pequenos serviços (componentes) • Execução em processo individual • Mecanismo leve de comunicação através de API de recursos HTTP • Desenvolvimento baseado em capacidades de negócios • Deploy independente automatizado • Gerenciamento centralizado mínimo • Projetado para ser resiliente e design evolutivo • Tecnologias heterogêneas e armazenamento poliglota • https://martinfowler.com/articles/microservices.html
  • 6. Copyright 2015 Google Inc Introdução • The Scale Cube - http://microservices.io/articles/scalecube.html
  • 7. Copyright 2015 Google Inc O mundo mudou, e agora ?
  • 8. Copyright 2015 Google Inc Arquitetura Moderna • Características principais: • Modelo de comunicação - síncrono / assíncrono • Controle de concorrência - multi-requests • Resiliência e tolerância a falhas • Infra-estrutura como código - “buildar máquinas” • Cloud Computing heterogênea • Persistência poliglota • Múltiplas linguagens de programação • Qualquer dispositivo é conectado a rede “Não há uma única arquitetura para todos os projetos”.
  • 9. Copyright 2015 Google Inc Arquitetura Moderna • Python e Java - O poder de ambos ao nosso dispor • Estável e madura • Escalável, ideal para qualquer projeto • Simples ao mesmo tempo elegante • Rápido desenvolvimento • Bibliotecas poderosas • Multiplataforma orientada a rede • Interpretada / Compilada (bytecode) • Vasta comunidade de desenvolvedores
  • 10. Copyright 2015 Google Inc • Middleware, Python ? • Roteamento de request para diferentes objetos • Balanceamento de carga • Gateway API Aggregation • Pós-processamento • Interface padronizada de comunicação • Transparência e governança de recursos Arquitetura Moderna
  • 11. Copyright 2015 Google Inc Arquitetura Moderna
  • 12. Copyright 2015 Google Inc • Arquitetura Orientada a Evento - AMQP Protocol • RabbitMQ - Java Library ou Python Celery Arquitetura Moderna
  • 13. Copyright 2015 Google Inc • Controle de concorrência • Java Executors ou Python Eventlet Arquitetura Moderna
  • 14. Copyright 2015 Google Inc Ambiente de Execução
  • 16. Copyright 2015 Google Inc Meu muito obrigado! “Quando você descobre algo, você se sente como se estivesse apaixonado”. Wozniak