SlideShare uma empresa Scribd logo
1 de 36
Baixar para ler offline
Microservices em Python
Como estamos construindo a maior plataforma
Agro do mundo para gestão animal!
Isaac Felisberto de Souza
Engenheiro de Software
Há 20 anos no mundo de
desenvolvimento de
software
VEREMOS
HOJE!
1
2
3
4
MICROSERVICES
O QUE É MICROSERVICES?
Modelo de arquitetura distribuída com soluções
compostas por pequenos serviços independentes
onde cada um possui uma função ou responsabilidade
bem definida.
COMO O MERCADO TEM
ADOTADO E EVOLUÍDO?
Nos primeiros anos...
MAS
NOS DIAS DE
HOJE…
COMEÇAMOS A
GANHAR
MATURIDADE NO
USO DE
MICROSERVICES
➔
➔
➔
➔
➔
➔
➔
➔
FUTURO
TENDÊNCIA DE ADOÇÃO CADA VEZ MAIOR!
SOLUÇÕES DE
GRANDE PORTE
MUITOS
CONTEXTOS
MÚLTIPLOS
PRODUTOS
SOLUÇÕES
ESCALÁVEIS
CONTEXTO
DE CLOUD
FaaS
PYTHON
COMO É VISTO NO MERCADO?
UMA ÓTIMA OPÇÃO PARA:
ANÁLISE DE
DADOS
MUNDO
ACADÊMICO
MACHINE
LEARN
SCRAPING
DEVOPS
PARA MICROSERVICES,
PYTHON É BOM?
SIM!
➔ Django RestFramework
➔ Flask
➔ Falcon
➔ Tornado
➔ Bottle
Pequenos
serviços
➔ REST
➔ GraphQL
➔ Json
➔ XML
➔ Swagger
API’s
➔ Celery
➔ RabbitMQ
➔ ActiveMQ
➔ Kafka
Processos
assíncronos e
mensageria
➔ SQLALchemy
➔ Django ORM
➔ Peewee
ORM
➔ OAuth
➔ JWT
➔ OpenID
➔ Saml
Autenticação
➔ Thorn
➔ dj-webhooks
➔ django-rest-hooks
➔ PyWebHooks
➔ Durian
WebHooks
PLATAFORMA
AGRINESS
O QUE É
Solução focada em gestão animal,
que visa proporcionar a produtores e cooperativas
uma gestão em tempo real
através de soluções web, mobile, IoT
e integrações de dados com soluções ERPs.
EVOLUÇÃO
PLATAFORMA AGRINESS
PRODUTORES
DADOS
CONSOLIDADOS
DADOS
SUÍNOS
DADOS
LEITE
INTEGRAÇÃO
DE DADOS
Agriness S4 Agriness CORP
OUTRAS
ESPÉCIES
Agriness PRESENCEAgriness
M4, P4
Agriness
T4
SISTEMAS DE
TERCEIROS
DADOS
De um software em Delphi até uma Arquitetura com microservices em PYTHON!
TÉCNICOSCOOPERATIVAS
ALGUNS
NÚMEROS
325+ 1.000+ 10+
1.5mi+1.500+ 12+
COMPOSIÇÃO DE SERVIÇOS DA
PLATAFORMA ATUALMENTE
AMADURECIMENTO DA
ARQUITETURA
PYTHON NA
PLATAFORMA
AGRINESS
PYTHON É A STACK PRINCIPAL
COVERAGE
BLACK
ROBOT
PYTEST
FLASK
PRINCIPAIS FRAMEWORKS E FERRAMENTAS
DJANGO
ORM
CELERY
DJANGO REST
FRAMEWORK
FLAKE8
DJANGO
GUNICORN
ALGUNS
APRENDIZADOS
NÃO BASTA APENAS
CRIAR SERVIÇOS
PEQUENOS
BOAS PRÁTICAS:
➔ SERVIÇOS MAIS INDEPENDENTES
POSSÍVEL
➔ SERVIÇOS ORIENTADOS A
EVENTOS
➔ PUBLICAÇÃO AS API’S ATRAVÉS
DE UM API GATEWAY
➔ ATENÇÃO AO EXCESSO DE
REQUISIÇÕES
➔ UMA BASE É ACESSADA POR UM
ÚNICO MICROSERVICE
MICROSERVICES
TAMBÉM
REQUER...
Integração
Contínua
Deploy
Contínuo
Documentação
de API’s
Monitoramento
Cloud
Provider
Comunicação
entre pessoas
MENOR
COMPLEXIDADE
TESTES
DESAFIOS!
DEPENDÊNCIAS
ENTRE
MICROSERVICES
PADRONIZAÇÃO
CONSISTÊNCIA
DADOS
ESCALAR
A SOLUÇÃO
VERSIONAMENTO
Mas…
Python não escala.
Python não é
enterprise.
Python
aguenta!!!
Obrigado!
Dúvidas?
Isaac Felisberto de Souza
isaacsouza@gmail.com
linkedin.com/in/isaacfsouza

Mais conteúdo relacionado

Semelhante a Microservices em Python. Como estamos construindo a maior plataforma Agro do mundo para gestão animal!

ICPD_2011_2012
ICPD_2011_2012ICPD_2011_2012
ICPD_2011_2012Rui Raposo
 
A proteção jurídica do programa de computador: ótica da empresa
A proteção jurídica do programa de computador: ótica da empresaA proteção jurídica do programa de computador: ótica da empresa
A proteção jurídica do programa de computador: ótica da empresaCEST
 
Skalena - Overview de Soluções
Skalena - Overview de Soluções Skalena - Overview de Soluções
Skalena - Overview de Soluções Edgar Silva
 
Trabalho colaborativo na entrega de software - case es na palma da mão
Trabalho colaborativo na entrega de software - case es na palma da mãoTrabalho colaborativo na entrega de software - case es na palma da mão
Trabalho colaborativo na entrega de software - case es na palma da mãoRenzo Colnago
 
Transformação digital e políticas públicas
Transformação digital e políticas públicasTransformação digital e políticas públicas
Transformação digital e políticas públicasAndré Spínola
 
Papel de Portais x Mobile e Redes Sociais
Papel de Portais x Mobile e Redes SociaisPapel de Portais x Mobile e Redes Sociais
Papel de Portais x Mobile e Redes SociaisLumis
 
Colaboração e Inclusão Digital
Colaboração e Inclusão DigitalColaboração e Inclusão Digital
Colaboração e Inclusão DigitalFelipe Palomaro
 
Azure Event Hubs: processando eventos em tempo real | MVPConf Latam 2021
Azure Event Hubs: processando eventos em tempo real | MVPConf Latam 2021Azure Event Hubs: processando eventos em tempo real | MVPConf Latam 2021
Azure Event Hubs: processando eventos em tempo real | MVPConf Latam 2021Renato Groffe
 
PLM Summit 2019 - A02 - Lucio Castilho - T-Systems
PLM Summit 2019 - A02 - Lucio Castilho - T-SystemsPLM Summit 2019 - A02 - Lucio Castilho - T-Systems
PLM Summit 2019 - A02 - Lucio Castilho - T-SystemsEvandro Gama (Prof. Dr.)
 
Cibernegócios. Pensou em negócios na rede, pensou ciber.
Cibernegócios. Pensou em negócios na rede, pensou ciber.Cibernegócios. Pensou em negócios na rede, pensou ciber.
Cibernegócios. Pensou em negócios na rede, pensou ciber.Karen Reis
 
Cibernegócios. Pensou em negócios na rede, pensou ciber
Cibernegócios. Pensou em negócios na rede, pensou ciberCibernegócios. Pensou em negócios na rede, pensou ciber
Cibernegócios. Pensou em negócios na rede, pensou ciberSautlink
 

Semelhante a Microservices em Python. Como estamos construindo a maior plataforma Agro do mundo para gestão animal! (20)

Apresentacao metashop
Apresentacao metashopApresentacao metashop
Apresentacao metashop
 
Wiad 2020
Wiad 2020Wiad 2020
Wiad 2020
 
Transformação digital e cognitiva - Oportunidades ou riscos?
Transformação digital e cognitiva - Oportunidades ou riscos?Transformação digital e cognitiva - Oportunidades ou riscos?
Transformação digital e cognitiva - Oportunidades ou riscos?
 
ICPD_2011_2012
ICPD_2011_2012ICPD_2011_2012
ICPD_2011_2012
 
O fim das organizações tradicionais
O fim das organizações tradicionais O fim das organizações tradicionais
O fim das organizações tradicionais
 
ENCOAD 2017 - Preparando o Profissional do Futuro para a Indústria 4.0
ENCOAD 2017 - Preparando o Profissional do Futuro para a Indústria 4.0ENCOAD 2017 - Preparando o Profissional do Futuro para a Indústria 4.0
ENCOAD 2017 - Preparando o Profissional do Futuro para a Indústria 4.0
 
A proteção jurídica do programa de computador: ótica da empresa
A proteção jurídica do programa de computador: ótica da empresaA proteção jurídica do programa de computador: ótica da empresa
A proteção jurídica do programa de computador: ótica da empresa
 
Skalena - Overview de Soluções
Skalena - Overview de Soluções Skalena - Overview de Soluções
Skalena - Overview de Soluções
 
Trabalho colaborativo na entrega de software - case es na palma da mão
Trabalho colaborativo na entrega de software - case es na palma da mãoTrabalho colaborativo na entrega de software - case es na palma da mão
Trabalho colaborativo na entrega de software - case es na palma da mão
 
Transformação digital e políticas públicas
Transformação digital e políticas públicasTransformação digital e políticas públicas
Transformação digital e políticas públicas
 
Desenvolvimento Com Software Livre
Desenvolvimento Com Software LivreDesenvolvimento Com Software Livre
Desenvolvimento Com Software Livre
 
Tecnologias Digitais
Tecnologias DigitaisTecnologias Digitais
Tecnologias Digitais
 
Slide 1.pdf
Slide 1.pdfSlide 1.pdf
Slide 1.pdf
 
Papel de Portais x Mobile e Redes Sociais
Papel de Portais x Mobile e Redes SociaisPapel de Portais x Mobile e Redes Sociais
Papel de Portais x Mobile e Redes Sociais
 
Colaboração e Inclusão Digital
Colaboração e Inclusão DigitalColaboração e Inclusão Digital
Colaboração e Inclusão Digital
 
Azure Event Hubs: processando eventos em tempo real | MVPConf Latam 2021
Azure Event Hubs: processando eventos em tempo real | MVPConf Latam 2021Azure Event Hubs: processando eventos em tempo real | MVPConf Latam 2021
Azure Event Hubs: processando eventos em tempo real | MVPConf Latam 2021
 
PLM Summit 2019 - A02 - Lucio Castilho - T-Systems
PLM Summit 2019 - A02 - Lucio Castilho - T-SystemsPLM Summit 2019 - A02 - Lucio Castilho - T-Systems
PLM Summit 2019 - A02 - Lucio Castilho - T-Systems
 
Cibernegócios. Pensou em negócios na rede, pensou ciber.
Cibernegócios. Pensou em negócios na rede, pensou ciber.Cibernegócios. Pensou em negócios na rede, pensou ciber.
Cibernegócios. Pensou em negócios na rede, pensou ciber.
 
Cibernegócios. Pensou em negócios na rede, pensou ciber
Cibernegócios. Pensou em negócios na rede, pensou ciberCibernegócios. Pensou em negócios na rede, pensou ciber
Cibernegócios. Pensou em negócios na rede, pensou ciber
 
Introducao a Microservices
Introducao a MicroservicesIntroducao a Microservices
Introducao a Microservices
 

Mais de Isaac de Souza

Sua solução escala? Testes de Stress e APMs podem responder.
Sua solução escala? Testes de Stress e APMs podem responder.Sua solução escala? Testes de Stress e APMs podem responder.
Sua solução escala? Testes de Stress e APMs podem responder.Isaac de Souza
 
Seu código fonte é sustentável?
Seu código fonte é sustentável?Seu código fonte é sustentável?
Seu código fonte é sustentável?Isaac de Souza
 
Compondo uma plataforma de software com microservices.
Compondo uma plataforma de software com microservices.Compondo uma plataforma de software com microservices.
Compondo uma plataforma de software com microservices.Isaac de Souza
 
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...Isaac de Souza
 
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...Isaac de Souza
 
Compondo uma plataforma de software
Compondo uma plataforma de softwareCompondo uma plataforma de software
Compondo uma plataforma de softwareIsaac de Souza
 
A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!Isaac de Souza
 
Desenhando a arquitetura do software!
Desenhando a arquitetura do software!Desenhando a arquitetura do software!
Desenhando a arquitetura do software!Isaac de Souza
 
A multiplicação dos devs!
A multiplicação dos devs!A multiplicação dos devs!
A multiplicação dos devs!Isaac de Souza
 
Estamos trabalhando melhor com dependências e ambientes usando containers?
Estamos trabalhando melhor  com dependências e ambientes  usando containers?Estamos trabalhando melhor  com dependências e ambientes  usando containers?
Estamos trabalhando melhor com dependências e ambientes usando containers?Isaac de Souza
 
É hora de pensar em soluções portáveis na cloud!
É hora de pensar em soluções portáveis na cloud!É hora de pensar em soluções portáveis na cloud!
É hora de pensar em soluções portáveis na cloud!Isaac de Souza
 
Cloud computing, quais vantagens reais?
Cloud computing, quais vantagens reais?Cloud computing, quais vantagens reais?
Cloud computing, quais vantagens reais?Isaac de Souza
 
Maior performance no seu sistema com o uso adequado de orm em rails
Maior performance no seu sistema com o uso adequado de orm em railsMaior performance no seu sistema com o uso adequado de orm em rails
Maior performance no seu sistema com o uso adequado de orm em railsIsaac de Souza
 

Mais de Isaac de Souza (13)

Sua solução escala? Testes de Stress e APMs podem responder.
Sua solução escala? Testes de Stress e APMs podem responder.Sua solução escala? Testes de Stress e APMs podem responder.
Sua solução escala? Testes de Stress e APMs podem responder.
 
Seu código fonte é sustentável?
Seu código fonte é sustentável?Seu código fonte é sustentável?
Seu código fonte é sustentável?
 
Compondo uma plataforma de software com microservices.
Compondo uma plataforma de software com microservices.Compondo uma plataforma de software com microservices.
Compondo uma plataforma de software com microservices.
 
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
 
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...
 
Compondo uma plataforma de software
Compondo uma plataforma de softwareCompondo uma plataforma de software
Compondo uma plataforma de software
 
A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!
 
Desenhando a arquitetura do software!
Desenhando a arquitetura do software!Desenhando a arquitetura do software!
Desenhando a arquitetura do software!
 
A multiplicação dos devs!
A multiplicação dos devs!A multiplicação dos devs!
A multiplicação dos devs!
 
Estamos trabalhando melhor com dependências e ambientes usando containers?
Estamos trabalhando melhor  com dependências e ambientes  usando containers?Estamos trabalhando melhor  com dependências e ambientes  usando containers?
Estamos trabalhando melhor com dependências e ambientes usando containers?
 
É hora de pensar em soluções portáveis na cloud!
É hora de pensar em soluções portáveis na cloud!É hora de pensar em soluções portáveis na cloud!
É hora de pensar em soluções portáveis na cloud!
 
Cloud computing, quais vantagens reais?
Cloud computing, quais vantagens reais?Cloud computing, quais vantagens reais?
Cloud computing, quais vantagens reais?
 
Maior performance no seu sistema com o uso adequado de orm em rails
Maior performance no seu sistema com o uso adequado de orm em railsMaior performance no seu sistema com o uso adequado de orm em rails
Maior performance no seu sistema com o uso adequado de orm em rails
 

Último

Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuisKitota
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx2m Assessoria
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfSamaraLunas
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 

Último (9)

Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 

Microservices em Python. Como estamos construindo a maior plataforma Agro do mundo para gestão animal!