SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
Desempenho utilizando
arquitetura de micro serviços
José Júnior Santana
jose.santana@yaman.com.br
2
Sobre
 Entusiasta em novas tecnologias e metodologias;
 Possuo mais de 15 anos atuando com desenvolvimento
e arquitetura de sistemas JAVA e .NET;
Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
3
Agenda
 Apresentação
 Modelo tradicional
 Contextualização
 Exemplo do modelo
 Prós
 Contras
 Modelo evolutivo
 Contextualização
 Exemplo do modelo
 Descrição das tecnologias utilizadas
 Prós
 Contras
 Qual melhor modelo a ser utilizado
 Bibliografia complementar
Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
Contextualização do modelo
“tradicional”
 Com a evolução dos “modelos de desenvolvimento”, um
modelo bastante adotado é o MVC, onde a aplicação é
dividida em 3 partes interconectadas, onde:
 MODEL
 “Armazena dados e notifica suas visões e controladores
associados quando há uma mudança em seu estado. Estas
notificações permitem que as visões produzam saídas
atualizadas e que os controladores alterem o conjunto de
comandos disponíveis”
 CONTROLLER
 “Envia comandos para o modelo para atualizar o seu estado”
 VIEW
 “Gera uma representação (Visão) dos dados presentes no
modelo solicitado”
5
CONTROLLERVIEW MODEL
Modelo tradicional
6
Prós
 O frontend e o backend podem ser hospedados em
servidores distintos;
 Melhor visualização das responsabilidades;
 Encapsulamento;
 Desenvolvimento em paralelo;
 Facilidade no controle e versionamento das entregas;
 Deploy unificado;
Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
Contras
 Ponto único de falha;
 Base do código fonte gerado muito extensa;
 A cada entrega é necessário desativar todo o sistema para
entregar as novas funcionalidades/correções;
 Facilidade em “burlar” as barreiras arquiteturais em tempo
de desenvolvimento;
 Dependendo do tamanho da aplicação, é possível que uma
entrega demora mais de um Sprint;
 Pouca escalabilidade;
 Maior esforço para medir o consumo da aplicação para
mensurar a infraestrutura;
Contextualização modelo
arquitetura de micro serviços
 “O termo ‘Arquitetura de Micro serviços’ surgiu nos
últimos anos para descrever um modo particular de
projetar aplicativos de software como conjuntos de
serviços de implementação independente. Embora não
exista uma definição precisa desse estilo de
arquitetura, há certas características comuns em torno
da organização em torno da capacidade comercial, da
implantação automatizada, da inteligência nos
terminais e do controle descentralizado de idiomas e
dados.”
Tradução do trecho “Microservices a definition of this new architeture term
https://martinfowler.com/articles/microservices.html
9
GATEWAY
API
DISCOVERY
Modelo evolutivo
Spring Cloud Logstash Elasticsearch Kibana
Docker
Authentication
Service
Micro serviços
Tecnologias utilizadas
 Aplicação Cliente
 Interface acessada pelo usuário, pode ser tanto uma
aplicação mobile, desktop, quanto um serviço exposto.
 Ex.: serviço de consulta dos correios
 Netflix Zuul – Gateway API
 É uma espécie de “porteiro”, é o responsável por
direcionar as chamadas recebidas para os respectivos
serviços;
 Netfilx Discovery
 Todos os serviços disponibilizados, são identificados pelo
Discovery, e ficam disponíveis para serem utilizados;
Tecnologias utilizadas
 Spring Cloud
 Faz parte do pacote do Spring, e auxilia na disponibilização das
configurações dos serviços. Todos os serviços que precisam de
arquivos de configuração, serão muito bem servidos com este
pacote.
 Logstash
 Pipeline de processamento de dados do lado do servidor, que insere
dados de várias fontes simultaneamente, transforma e envia para o
Elasticsearch
 Elasticsearch
 Mecanismo distribuído de pesquisa e análise RESTful, que armazena
os dados centralmente e é de grande ajuda na busca em dados
“não organizados”.
 Kibana
 Permite a visualização dos dados do Elasticsearch em forma de
gráficos;
12
Prós
 Independência entre os serviços;
 Possiblidade de trabalhar com diversas tecnologias ao
mesmo tempo;
 Aplicações distribuídas;
 Mais fácil de escalar;
 Diminuição do ponto único de falha;
 Sistemas com base de códigos menores;
 Facilidade na analise de desempenho;
Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
Contras
 Quantidade de serviços instalados;
 Gerenciamento de vários ambientes;
 Versionamento dos serviços;
 Gerenciamento entre infra/negócios;
 Serviços consumindo outros serviços;
 Dificuldade em encontrar mão obra especializada;
 Duplicação de código;
14
Qual o melhor modelo a
ser utilizado?
 “No Silver Bullet”;
 Depende do tamanho da aplicação;
 Infraestrutura onde será armazenada;
Referencias web
15
Leitura complementar
 Blog Caelum, texto comparativo sobre a utilização do dois
modelos
 http://blog.caelum.com.br/arquitetura-de-microservicos-ou-
monolitica/
 Site oficial do Marting Fowler
 https://martinfowler.com/articles/microservices.html
 Artigo explicativo sobre como montar um ambiente CI
 https://blog.codecentric.de/en/2015/10/continuous-
integration-platform-using-docker-container-jenkins-
sonarqube-nexus-gitlab/
 Artigo onde o autor explica sua experiência com o uso do
Docker
 https://thehftguy.com/2016/11/01/docker-in-production-an-
history-of-failure/

Mais conteúdo relacionado

Mais procurados

Introdução ASP.NET Core
Introdução ASP.NET CoreIntrodução ASP.NET Core
Introdução ASP.NET Corelacerda2
 
Migrando Aplicações para o SQL Azure Database
Migrando Aplicações para o SQL Azure DatabaseMigrando Aplicações para o SQL Azure Database
Migrando Aplicações para o SQL Azure DatabaseRoberto Fonseca
 
Stratesys - Integração SuccessFactors com HCM On-Premise - Flyer OCT2014
Stratesys -  Integração SuccessFactors com HCM On-Premise - Flyer OCT2014Stratesys -  Integração SuccessFactors com HCM On-Premise - Flyer OCT2014
Stratesys - Integração SuccessFactors com HCM On-Premise - Flyer OCT2014StratesysBR
 
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)Tiago Marchetti Dolphine
 
datazen_inicio_ao_fim_sat_sp
datazen_inicio_ao_fim_sat_spdatazen_inicio_ao_fim_sat_sp
datazen_inicio_ao_fim_sat_sparthurjosemberg
 
Microservices - ALM Roadshow 2015
Microservices - ALM Roadshow 2015Microservices - ALM Roadshow 2015
Microservices - ALM Roadshow 2015Renato Groff
 
Amadurecendo Equipes com Microservices
Amadurecendo Equipes com MicroservicesAmadurecendo Equipes com Microservices
Amadurecendo Equipes com Microservicessanchez_ivan
 
Microsoft Azure. Funcionalidades em Infraestrutura
Microsoft Azure. Funcionalidades em InfraestruturaMicrosoft Azure. Funcionalidades em Infraestrutura
Microsoft Azure. Funcionalidades em InfraestruturaAlvaro Rezende
 
Desenvolvimento de sistemas com mensageria
Desenvolvimento de sistemas com mensageriaDesenvolvimento de sistemas com mensageria
Desenvolvimento de sistemas com mensageriaPaula Santana
 
Indo alem do_mvc_node_js
Indo alem do_mvc_node_jsIndo alem do_mvc_node_js
Indo alem do_mvc_node_jsgustavobeavis
 
[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de Microservices
[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de Microservices[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de Microservices
[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de MicroservicesDeep Tech Brasil
 
Arquitetura e Integração de sistemas
Arquitetura e Integração de sistemasArquitetura e Integração de sistemas
Arquitetura e Integração de sistemasJether Rodrigues
 

Mais procurados (18)

Introdução ASP.NET Core
Introdução ASP.NET CoreIntrodução ASP.NET Core
Introdução ASP.NET Core
 
Migrando Aplicações para o SQL Azure Database
Migrando Aplicações para o SQL Azure DatabaseMigrando Aplicações para o SQL Azure Database
Migrando Aplicações para o SQL Azure Database
 
Datasheet nucleos enterprise
Datasheet   nucleos enterpriseDatasheet   nucleos enterprise
Datasheet nucleos enterprise
 
Stratesys - Integração SuccessFactors com HCM On-Premise - Flyer OCT2014
Stratesys -  Integração SuccessFactors com HCM On-Premise - Flyer OCT2014Stratesys -  Integração SuccessFactors com HCM On-Premise - Flyer OCT2014
Stratesys - Integração SuccessFactors com HCM On-Premise - Flyer OCT2014
 
Webinar Azure
Webinar AzureWebinar Azure
Webinar Azure
 
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
 
datazen_inicio_ao_fim_sat_sp
datazen_inicio_ao_fim_sat_spdatazen_inicio_ao_fim_sat_sp
datazen_inicio_ao_fim_sat_sp
 
Microservices - ALM Roadshow 2015
Microservices - ALM Roadshow 2015Microservices - ALM Roadshow 2015
Microservices - ALM Roadshow 2015
 
Estudo de caso ASP.NET MVC e Silverlight
Estudo de caso ASP.NET MVC e SilverlightEstudo de caso ASP.NET MVC e Silverlight
Estudo de caso ASP.NET MVC e Silverlight
 
Amadurecendo Equipes com Microservices
Amadurecendo Equipes com MicroservicesAmadurecendo Equipes com Microservices
Amadurecendo Equipes com Microservices
 
Microsoft Azure. Funcionalidades em Infraestrutura
Microsoft Azure. Funcionalidades em InfraestruturaMicrosoft Azure. Funcionalidades em Infraestrutura
Microsoft Azure. Funcionalidades em Infraestrutura
 
Desenvolvimento de sistemas com mensageria
Desenvolvimento de sistemas com mensageriaDesenvolvimento de sistemas com mensageria
Desenvolvimento de sistemas com mensageria
 
Introdução à Microservices
Introdução à MicroservicesIntrodução à Microservices
Introdução à Microservices
 
Microservices
MicroservicesMicroservices
Microservices
 
Indo alem do_mvc_node_js
Indo alem do_mvc_node_jsIndo alem do_mvc_node_js
Indo alem do_mvc_node_js
 
JUGVale 14 - 14/09/2019
JUGVale 14 - 14/09/2019JUGVale 14 - 14/09/2019
JUGVale 14 - 14/09/2019
 
[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de Microservices
[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de Microservices[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de Microservices
[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de Microservices
 
Arquitetura e Integração de sistemas
Arquitetura e Integração de sistemasArquitetura e Integração de sistemas
Arquitetura e Integração de sistemas
 

Semelhante a Architecture performance using micro services

Microservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixMicroservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixNatanael Fonseca
 
Transformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualizaçãoTransformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualizaçãoDarlan Segalin
 
Microservices - Canal .NET Dev Weekend
Microservices - Canal .NET Dev WeekendMicroservices - Canal .NET Dev Weekend
Microservices - Canal .NET Dev WeekendRenato Groff
 
Desenvolvimento em Nuvem
Desenvolvimento em NuvemDesenvolvimento em Nuvem
Desenvolvimento em NuvemVitor Savicki
 
Arquitetura de Micro Serviços
Arquitetura de Micro ServiçosArquitetura de Micro Serviços
Arquitetura de Micro ServiçosFernando Ike
 
Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016Renato Groff
 
Arquitetura cliente servidor
Arquitetura cliente servidorArquitetura cliente servidor
Arquitetura cliente servidorMarcia Abrahim
 
Saa s software como serviço (slides)
Saa s   software como serviço (slides)Saa s   software como serviço (slides)
Saa s software como serviço (slides)Daniela Nunes
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecturerenanwb
 
O desafio de sustentar centenas de servicos
O desafio de sustentar centenas de servicosO desafio de sustentar centenas de servicos
O desafio de sustentar centenas de servicosGraziella Bonizi
 
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoComo DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoLuiz Costa
 
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017Renato Groff
 
9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stv9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stvwilson_lucas
 
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...Lenin Abadie
 
MIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como CódigoMIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como CódigoCaio Candido
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Eric Gallardo
 

Semelhante a Architecture performance using micro services (20)

Microservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixMicroservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud Netflix
 
Microservices
MicroservicesMicroservices
Microservices
 
Transformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualizaçãoTransformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualização
 
Microservices - Canal .NET Dev Weekend
Microservices - Canal .NET Dev WeekendMicroservices - Canal .NET Dev Weekend
Microservices - Canal .NET Dev Weekend
 
Microservices
MicroservicesMicroservices
Microservices
 
Desenvolvimento em Nuvem
Desenvolvimento em NuvemDesenvolvimento em Nuvem
Desenvolvimento em Nuvem
 
Arquitetura de Micro Serviços
Arquitetura de Micro ServiçosArquitetura de Micro Serviços
Arquitetura de Micro Serviços
 
Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016
 
Arquitetura cliente servidor
Arquitetura cliente servidorArquitetura cliente servidor
Arquitetura cliente servidor
 
Soa Woa Rest
Soa Woa RestSoa Woa Rest
Soa Woa Rest
 
Saa s software como serviço (slides)
Saa s   software como serviço (slides)Saa s   software como serviço (slides)
Saa s software como serviço (slides)
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
O desafio de sustentar centenas de servicos
O desafio de sustentar centenas de servicosO desafio de sustentar centenas de servicos
O desafio de sustentar centenas de servicos
 
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoComo DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
 
9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stv9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stv
 
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
 
MIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como CódigoMIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como Código
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014
 

Mais de Joao Galdino Mello de Souza

Enterprise computing for modern business workloads por Lívio Sousa (IBM)
Enterprise computing for modern business workloads por Lívio Sousa (IBM)Enterprise computing for modern business workloads por Lívio Sousa (IBM)
Enterprise computing for modern business workloads por Lívio Sousa (IBM)Joao Galdino Mello de Souza
 
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI) e Fernando Ferreira (IBM)
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI) e Fernando Ferreira (IBM)Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI) e Fernando Ferreira (IBM)
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI) e Fernando Ferreira (IBM)Joao Galdino Mello de Souza
 
Scaling Multi-cloud with Infrastructure as Code por André Rocha Agostinho (S...
Scaling  Multi-cloud with Infrastructure as Code por André Rocha Agostinho (S...Scaling  Multi-cloud with Infrastructure as Code por André Rocha Agostinho (S...
Scaling Multi-cloud with Infrastructure as Code por André Rocha Agostinho (S...Joao Galdino Mello de Souza
 
Alta Disponibilidade SQL Server por Marcus Vinicius Bittencourt (O Boticário)
Alta Disponibilidade SQL Server por Marcus Vinicius Bittencourt (O Boticário)Alta Disponibilidade SQL Server por Marcus Vinicius Bittencourt (O Boticário)
Alta Disponibilidade SQL Server por Marcus Vinicius Bittencourt (O Boticário)Joao Galdino Mello de Souza
 
Cloud no Banco Votorantim por Marcus Vinícius de Aguiar Magalhaes (Banco Voto...
Cloud no Banco Votorantim por Marcus Vinícius de Aguiar Magalhaes (Banco Voto...Cloud no Banco Votorantim por Marcus Vinícius de Aguiar Magalhaes (Banco Voto...
Cloud no Banco Votorantim por Marcus Vinícius de Aguiar Magalhaes (Banco Voto...Joao Galdino Mello de Souza
 
Descomplicando a Ciência de Dados por Adelson Lovatto (IBM)
Descomplicando a Ciência de Dados por Adelson Lovatto (IBM)Descomplicando a Ciência de Dados por Adelson Lovatto (IBM)
Descomplicando a Ciência de Dados por Adelson Lovatto (IBM)Joao Galdino Mello de Souza
 
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI)
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI)Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI)
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI)Joao Galdino Mello de Souza
 
Consumo de CPU, Distorções e Redução de custo de SW por Maria Isabel Soutello...
Consumo de CPU, Distorções e Redução de custo de SW por Maria Isabel Soutello...Consumo de CPU, Distorções e Redução de custo de SW por Maria Isabel Soutello...
Consumo de CPU, Distorções e Redução de custo de SW por Maria Isabel Soutello...Joao Galdino Mello de Souza
 
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)Joao Galdino Mello de Souza
 
Assets Tokenization: Novas Linhas de negócio por Lívio Sousa (IBM)
Assets Tokenization: Novas Linhas de negócio por Lívio Sousa (IBM)Assets Tokenization: Novas Linhas de negócio por Lívio Sousa (IBM)
Assets Tokenization: Novas Linhas de negócio por Lívio Sousa (IBM)Joao Galdino Mello de Souza
 
Intelligent Edge e Intelligent Cloud por Vivian Heinrichs (Softline)
Intelligent Edge e Intelligent Cloud por Vivian Heinrichs (Softline)Intelligent Edge e Intelligent Cloud por Vivian Heinrichs (Softline)
Intelligent Edge e Intelligent Cloud por Vivian Heinrichs (Softline)Joao Galdino Mello de Souza
 
Evolução da eficiência operacional no mainframe por Emerson Castelano (Eccox)
Evolução da eficiência operacional no mainframe por Emerson Castelano (Eccox)Evolução da eficiência operacional no mainframe por Emerson Castelano (Eccox)
Evolução da eficiência operacional no mainframe por Emerson Castelano (Eccox)Joao Galdino Mello de Souza
 
Gestão de Capacidade, desempenho e custos no ambiente mainframe zOS: Um caso ...
Gestão de Capacidade, desempenho e custos no ambiente mainframe zOS: Um caso ...Gestão de Capacidade, desempenho e custos no ambiente mainframe zOS: Um caso ...
Gestão de Capacidade, desempenho e custos no ambiente mainframe zOS: Um caso ...Joao Galdino Mello de Souza
 
Eletricidade e Eletrônica 1.01 por Luiz Carlos Orsoni (MAFFEI)
Eletricidade e Eletrônica 1.01 por Luiz Carlos Orsoni (MAFFEI)Eletricidade e Eletrônica 1.01 por Luiz Carlos Orsoni (MAFFEI)
Eletricidade e Eletrônica 1.01 por Luiz Carlos Orsoni (MAFFEI)Joao Galdino Mello de Souza
 
Pervasive Encryption por Eugênio Fernandes (IBM)
Pervasive Encryption por Eugênio Fernandes (IBM)Pervasive Encryption por Eugênio Fernandes (IBM)
Pervasive Encryption por Eugênio Fernandes (IBM)Joao Galdino Mello de Souza
 
Minimizar RNI ambiente CICS por Milton Ferraraccio (Eccox Technology)
Minimizar RNI ambiente CICS por Milton Ferraraccio (Eccox Technology)Minimizar RNI ambiente CICS por Milton Ferraraccio (Eccox Technology)
Minimizar RNI ambiente CICS por Milton Ferraraccio (Eccox Technology)Joao Galdino Mello de Souza
 
Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (...
Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (...Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (...
Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (...Joao Galdino Mello de Souza
 
Como obter o melhor do Z por Gustavo Fernandes Araujo (Itau Unibanco)
Como obter o melhor do Z por Gustavo Fernandes Araujo (Itau Unibanco)Como obter o melhor do Z por Gustavo Fernandes Araujo (Itau Unibanco)
Como obter o melhor do Z por Gustavo Fernandes Araujo (Itau Unibanco)Joao Galdino Mello de Souza
 
Lei geral de proteção de dados por Kleber Silva e Ricardo Navarro (Pise4)
Lei geral de proteção de dados por Kleber Silva  e Ricardo Navarro (Pise4)Lei geral de proteção de dados por Kleber Silva  e Ricardo Navarro (Pise4)
Lei geral de proteção de dados por Kleber Silva e Ricardo Navarro (Pise4)Joao Galdino Mello de Souza
 

Mais de Joao Galdino Mello de Souza (20)

Explorando a API Rest Jira Cloud
Explorando a API Rest Jira CloudExplorando a API Rest Jira Cloud
Explorando a API Rest Jira Cloud
 
Enterprise computing for modern business workloads por Lívio Sousa (IBM)
Enterprise computing for modern business workloads por Lívio Sousa (IBM)Enterprise computing for modern business workloads por Lívio Sousa (IBM)
Enterprise computing for modern business workloads por Lívio Sousa (IBM)
 
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI) e Fernando Ferreira (IBM)
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI) e Fernando Ferreira (IBM)Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI) e Fernando Ferreira (IBM)
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI) e Fernando Ferreira (IBM)
 
Scaling Multi-cloud with Infrastructure as Code por André Rocha Agostinho (S...
Scaling  Multi-cloud with Infrastructure as Code por André Rocha Agostinho (S...Scaling  Multi-cloud with Infrastructure as Code por André Rocha Agostinho (S...
Scaling Multi-cloud with Infrastructure as Code por André Rocha Agostinho (S...
 
Alta Disponibilidade SQL Server por Marcus Vinicius Bittencourt (O Boticário)
Alta Disponibilidade SQL Server por Marcus Vinicius Bittencourt (O Boticário)Alta Disponibilidade SQL Server por Marcus Vinicius Bittencourt (O Boticário)
Alta Disponibilidade SQL Server por Marcus Vinicius Bittencourt (O Boticário)
 
Cloud no Banco Votorantim por Marcus Vinícius de Aguiar Magalhaes (Banco Voto...
Cloud no Banco Votorantim por Marcus Vinícius de Aguiar Magalhaes (Banco Voto...Cloud no Banco Votorantim por Marcus Vinícius de Aguiar Magalhaes (Banco Voto...
Cloud no Banco Votorantim por Marcus Vinícius de Aguiar Magalhaes (Banco Voto...
 
Descomplicando a Ciência de Dados por Adelson Lovatto (IBM)
Descomplicando a Ciência de Dados por Adelson Lovatto (IBM)Descomplicando a Ciência de Dados por Adelson Lovatto (IBM)
Descomplicando a Ciência de Dados por Adelson Lovatto (IBM)
 
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI)
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI)Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI)
Pré-Anúncio z/OS 2.4 por Alvaro Salla (MAFFEI)
 
Consumo de CPU, Distorções e Redução de custo de SW por Maria Isabel Soutello...
Consumo de CPU, Distorções e Redução de custo de SW por Maria Isabel Soutello...Consumo de CPU, Distorções e Redução de custo de SW por Maria Isabel Soutello...
Consumo de CPU, Distorções e Redução de custo de SW por Maria Isabel Soutello...
 
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)
 
Assets Tokenization: Novas Linhas de negócio por Lívio Sousa (IBM)
Assets Tokenization: Novas Linhas de negócio por Lívio Sousa (IBM)Assets Tokenization: Novas Linhas de negócio por Lívio Sousa (IBM)
Assets Tokenization: Novas Linhas de negócio por Lívio Sousa (IBM)
 
Intelligent Edge e Intelligent Cloud por Vivian Heinrichs (Softline)
Intelligent Edge e Intelligent Cloud por Vivian Heinrichs (Softline)Intelligent Edge e Intelligent Cloud por Vivian Heinrichs (Softline)
Intelligent Edge e Intelligent Cloud por Vivian Heinrichs (Softline)
 
Evolução da eficiência operacional no mainframe por Emerson Castelano (Eccox)
Evolução da eficiência operacional no mainframe por Emerson Castelano (Eccox)Evolução da eficiência operacional no mainframe por Emerson Castelano (Eccox)
Evolução da eficiência operacional no mainframe por Emerson Castelano (Eccox)
 
Gestão de Capacidade, desempenho e custos no ambiente mainframe zOS: Um caso ...
Gestão de Capacidade, desempenho e custos no ambiente mainframe zOS: Um caso ...Gestão de Capacidade, desempenho e custos no ambiente mainframe zOS: Um caso ...
Gestão de Capacidade, desempenho e custos no ambiente mainframe zOS: Um caso ...
 
Eletricidade e Eletrônica 1.01 por Luiz Carlos Orsoni (MAFFEI)
Eletricidade e Eletrônica 1.01 por Luiz Carlos Orsoni (MAFFEI)Eletricidade e Eletrônica 1.01 por Luiz Carlos Orsoni (MAFFEI)
Eletricidade e Eletrônica 1.01 por Luiz Carlos Orsoni (MAFFEI)
 
Pervasive Encryption por Eugênio Fernandes (IBM)
Pervasive Encryption por Eugênio Fernandes (IBM)Pervasive Encryption por Eugênio Fernandes (IBM)
Pervasive Encryption por Eugênio Fernandes (IBM)
 
Minimizar RNI ambiente CICS por Milton Ferraraccio (Eccox Technology)
Minimizar RNI ambiente CICS por Milton Ferraraccio (Eccox Technology)Minimizar RNI ambiente CICS por Milton Ferraraccio (Eccox Technology)
Minimizar RNI ambiente CICS por Milton Ferraraccio (Eccox Technology)
 
Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (...
Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (...Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (...
Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (...
 
Como obter o melhor do Z por Gustavo Fernandes Araujo (Itau Unibanco)
Como obter o melhor do Z por Gustavo Fernandes Araujo (Itau Unibanco)Como obter o melhor do Z por Gustavo Fernandes Araujo (Itau Unibanco)
Como obter o melhor do Z por Gustavo Fernandes Araujo (Itau Unibanco)
 
Lei geral de proteção de dados por Kleber Silva e Ricardo Navarro (Pise4)
Lei geral de proteção de dados por Kleber Silva  e Ricardo Navarro (Pise4)Lei geral de proteção de dados por Kleber Silva  e Ricardo Navarro (Pise4)
Lei geral de proteção de dados por Kleber Silva e Ricardo Navarro (Pise4)
 

Architecture performance using micro services

  • 1. Desempenho utilizando arquitetura de micro serviços José Júnior Santana jose.santana@yaman.com.br
  • 2. 2 Sobre  Entusiasta em novas tecnologias e metodologias;  Possuo mais de 15 anos atuando com desenvolvimento e arquitetura de sistemas JAVA e .NET; Proibida cópia ou divulgação sem permissão escrita do CMG Brasil.
  • 3. 3 Agenda  Apresentação  Modelo tradicional  Contextualização  Exemplo do modelo  Prós  Contras  Modelo evolutivo  Contextualização  Exemplo do modelo  Descrição das tecnologias utilizadas  Prós  Contras  Qual melhor modelo a ser utilizado  Bibliografia complementar Proibida cópia ou divulgação sem permissão escrita do CMG Brasil.
  • 4. Contextualização do modelo “tradicional”  Com a evolução dos “modelos de desenvolvimento”, um modelo bastante adotado é o MVC, onde a aplicação é dividida em 3 partes interconectadas, onde:  MODEL  “Armazena dados e notifica suas visões e controladores associados quando há uma mudança em seu estado. Estas notificações permitem que as visões produzam saídas atualizadas e que os controladores alterem o conjunto de comandos disponíveis”  CONTROLLER  “Envia comandos para o modelo para atualizar o seu estado”  VIEW  “Gera uma representação (Visão) dos dados presentes no modelo solicitado”
  • 6. 6 Prós  O frontend e o backend podem ser hospedados em servidores distintos;  Melhor visualização das responsabilidades;  Encapsulamento;  Desenvolvimento em paralelo;  Facilidade no controle e versionamento das entregas;  Deploy unificado; Proibida cópia ou divulgação sem permissão escrita do CMG Brasil.
  • 7. Contras  Ponto único de falha;  Base do código fonte gerado muito extensa;  A cada entrega é necessário desativar todo o sistema para entregar as novas funcionalidades/correções;  Facilidade em “burlar” as barreiras arquiteturais em tempo de desenvolvimento;  Dependendo do tamanho da aplicação, é possível que uma entrega demora mais de um Sprint;  Pouca escalabilidade;  Maior esforço para medir o consumo da aplicação para mensurar a infraestrutura;
  • 8. Contextualização modelo arquitetura de micro serviços  “O termo ‘Arquitetura de Micro serviços’ surgiu nos últimos anos para descrever um modo particular de projetar aplicativos de software como conjuntos de serviços de implementação independente. Embora não exista uma definição precisa desse estilo de arquitetura, há certas características comuns em torno da organização em torno da capacidade comercial, da implantação automatizada, da inteligência nos terminais e do controle descentralizado de idiomas e dados.” Tradução do trecho “Microservices a definition of this new architeture term https://martinfowler.com/articles/microservices.html
  • 9. 9 GATEWAY API DISCOVERY Modelo evolutivo Spring Cloud Logstash Elasticsearch Kibana Docker Authentication Service Micro serviços
  • 10. Tecnologias utilizadas  Aplicação Cliente  Interface acessada pelo usuário, pode ser tanto uma aplicação mobile, desktop, quanto um serviço exposto.  Ex.: serviço de consulta dos correios  Netflix Zuul – Gateway API  É uma espécie de “porteiro”, é o responsável por direcionar as chamadas recebidas para os respectivos serviços;  Netfilx Discovery  Todos os serviços disponibilizados, são identificados pelo Discovery, e ficam disponíveis para serem utilizados;
  • 11. Tecnologias utilizadas  Spring Cloud  Faz parte do pacote do Spring, e auxilia na disponibilização das configurações dos serviços. Todos os serviços que precisam de arquivos de configuração, serão muito bem servidos com este pacote.  Logstash  Pipeline de processamento de dados do lado do servidor, que insere dados de várias fontes simultaneamente, transforma e envia para o Elasticsearch  Elasticsearch  Mecanismo distribuído de pesquisa e análise RESTful, que armazena os dados centralmente e é de grande ajuda na busca em dados “não organizados”.  Kibana  Permite a visualização dos dados do Elasticsearch em forma de gráficos;
  • 12. 12 Prós  Independência entre os serviços;  Possiblidade de trabalhar com diversas tecnologias ao mesmo tempo;  Aplicações distribuídas;  Mais fácil de escalar;  Diminuição do ponto único de falha;  Sistemas com base de códigos menores;  Facilidade na analise de desempenho; Proibida cópia ou divulgação sem permissão escrita do CMG Brasil.
  • 13. Contras  Quantidade de serviços instalados;  Gerenciamento de vários ambientes;  Versionamento dos serviços;  Gerenciamento entre infra/negócios;  Serviços consumindo outros serviços;  Dificuldade em encontrar mão obra especializada;  Duplicação de código;
  • 14. 14 Qual o melhor modelo a ser utilizado?  “No Silver Bullet”;  Depende do tamanho da aplicação;  Infraestrutura onde será armazenada;
  • 15. Referencias web 15 Leitura complementar  Blog Caelum, texto comparativo sobre a utilização do dois modelos  http://blog.caelum.com.br/arquitetura-de-microservicos-ou- monolitica/  Site oficial do Marting Fowler  https://martinfowler.com/articles/microservices.html  Artigo explicativo sobre como montar um ambiente CI  https://blog.codecentric.de/en/2015/10/continuous- integration-platform-using-docker-container-jenkins- sonarqube-nexus-gitlab/  Artigo onde o autor explica sua experiência com o uso do Docker  https://thehftguy.com/2016/11/01/docker-in-production-an- history-of-failure/

Notas do Editor

  1. When you’re looking at memory cache’s you will hear a lot of different terms.