SlideShare uma empresa Scribd logo
Saindo do Monolito
ao Micro-Frontend
Como evoluímos o nosso principal produto
Vagner Oliveira
vagner.olliver@gmail.com - @vagnerolliver
Thiago Martins
thiagomsl@gmail.com - @thiagommaartins
Hello !
Thiago Martins
Front-End Developer - App.Zenvia
Análise e Desenv. De Sistemas - Unicesumar
Vágner Oliveira
Front-End Developer - Zenvia Message
Sistema para Internet - Ulbra
Check In
O que é Micro-Frontend?
Quais os tipos de MFE possíveis
Problema de negócio
O Single-SPA
Desafios e Lições aprendidas
Perguntas e bate-papo
Micro-Frontend
● Estende os conceitos de microservices
● Sistemas isolados, testados e implementados independente de outros
● Trabalhar com funcionalidades de maneira isolada
● Times coesos que podem representar
uma camada de negócio de ponta a ponta
● Desenvolvimento e deploys rápidos
imagens: https://scs-architecture.org/index.html
Visualizações do MFE's
Vertical
Times trabalhando em páginas diferentes
Horizontal
Times trabalhando em uma mesma página
imagens: https://medium.com/@lucamezzalira/micro-frontends-decisions-framework-ebcd22256513
Composição MFE's
● Client Side
● Server Side
● Edge Side
imagem: https://www.clariontech.com/blog/server-side-rendering-vs.-client-side-rendering
Tá, tudo muito legal!
Mas qual o problema de negócio
que queremos resolver?
Problema de negócio
● Alto nível de acoplamento das aplicações.
● Times com velocidades de entregas
diferentes.
● Tempo considerável para incluir novos
produtos na plataforma.
● Ausência de padrão visual entre os
produtos.
● Monolito com alta dependência para as
demais aplicações.
● Reduzir o tempo de inclusão de novos
produtos na plataforma.
● Deploy independente dos times.
● Autonomia para os times.
● Remover a dependência do monolito.
● Login único entre produtos.
● Experiência única, entre os produtos.
● Fluidez na navegação entre os
produtos.
● Atualização da stack.
● Aplicações escaláveis.
Cenário que tínhamos Onde queríamos chegar
Então o Single SPA nos atende pq ...
● Outros grandes players já tinham usado e tínhamos uma base para começar
● Atualização e colaboração ativa da comunidade;
● Muito conteúdo na web;
● Possui três modos de utilização:
○ Single-spa applications: Micro-frontends que renderiza componentes para um
conjunto de rotas específicas.
○ Single-spa parcel : Micro-frontends que renderiza componentes sem controlar
rotas.
○ Utility Modules: Micro-frontends que exportam lógica JavaScript compartilhada
sem componentes de renderização.
Fonte: https://single-spa.js.org/
Ecossistema
Desafios encontrados
● Falta de documentação do que já tinha sido descoberto
● Descoberta do novo e pouca referência na web
● Erros encontrados no meio do caminho
● Estávamos implementando paralelo a isso um SSO (Single Sign-On)
● Organizar/conhecer melhor o AWS (S3)
● Muuuitas branches e pouco controle!
● Rotina do Jenkins sabotando os devs
● Muito cache e vários F5 para validar implementações.
Lições aprendidas
● Documentação das features
● Apoio da comunidade;
● Design Systems;
● Plugin do Concurrently;
● Processo de deploy, release e validação;
● Muitos e muitos Researches
Começando ...
https://micro-frontends.org/
http://single-spa-playground.org/playground
https://medium.com/@lucamezzalira/micro-frontends-decisions-framework-ebcd22256513
https://www.thoughtworks.com/radar/techniques/micro-frontends
https://www.thoughtworks.com/radar/languages-and-frameworks/single-spa
https://www.thoughtworks.com/radar/techniques/micro-frontend-anarchy
Obrigado!
Vagner Oliveira
vagner.olliver@gmail.com - @vagnerolliver
https://www.linkedin.com/in/vagnerolliver/
Thiago Martins
thiagomsl@gmail.com - @twthiagomartins
https://www.linkedin.com/in/thiagomaartins/
Queremos te convidar

Mais conteúdo relacionado

PDF
Introdução ao LiveOak
PDF
Vraptor 3
PPTX
Aplicações ricas com JavaFX 2
PDF
O que move a web atualmente?
PPTX
Criando aplicações java fx em minutos
PDF
Conectando jBPM com o mundo - TDC 2014 SP
PDF
JavaFX: Desktop para desenvolvedores WEB
PDF
Desenvolvimento rápido de aplicações com JEE e JavaFX
Introdução ao LiveOak
Vraptor 3
Aplicações ricas com JavaFX 2
O que move a web atualmente?
Criando aplicações java fx em minutos
Conectando jBPM com o mundo - TDC 2014 SP
JavaFX: Desktop para desenvolvedores WEB
Desenvolvimento rápido de aplicações com JEE e JavaFX

Mais procurados (20)

PDF
Ria e Java FX
PDF
JavaFX: A nova biblioteca gráfica da plataforma Java
PDF
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
PPTX
ODP
Web Development em 2015
PDF
Por que Joomla! ? - 3ª SASPI 2011
PPTX
JavaFX - Uma visão Geral
PDF
JavaFX 2 - TDC 2012
PDF
AngularJs 1.x - Meetup - Coders In Rio
PPTX
OpenAM - Fast SSO
PDF
Desenvolvimento web com groovy e grails.
PDF
Zend Framework: Reuso e extensão de componentes para fácil manutenção
PDF
Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SP
PDF
JavaScript Moderno
PPTX
Microsoft MTACs
PDF
Java não é tão difícil quanto parece
PPT
Design patterns e tecnologias para modularização em java tdc2014
PDF
JavaFX 2
PPTX
Software robusto e flexível
PDF
Modularização em java com osgi
Ria e Java FX
JavaFX: A nova biblioteca gráfica da plataforma Java
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
Web Development em 2015
Por que Joomla! ? - 3ª SASPI 2011
JavaFX - Uma visão Geral
JavaFX 2 - TDC 2012
AngularJs 1.x - Meetup - Coders In Rio
OpenAM - Fast SSO
Desenvolvimento web com groovy e grails.
Zend Framework: Reuso e extensão de componentes para fácil manutenção
Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SP
JavaScript Moderno
Microsoft MTACs
Java não é tão difícil quanto parece
Design patterns e tecnologias para modularização em java tdc2014
JavaFX 2
Software robusto e flexível
Modularização em java com osgi
Anúncio

Semelhante a Micro frontend (20)

PDF
Arquitetura de Micro Serviços
PDF
Single-SPA: Como este framework pode me ajudar na construção de Micro Front-Ends
PDF
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
PPTX
Application Insights
 
PDF
Micro frontend de um jeito que você nunca viu
PDF
DevOps... O caminho! - Monitoramento de aplicações com App Insights
PDF
Linguagil 2012: Desenvolvendo Aplicações RIA com Ext JS 4 e Touch 2
PPT
DevInCachu 2012: Desenvolvendo Aplicacoes RIA com ExtJS 4 e Sencha Touch 2
PDF
Escalando apps com React e Type Script e SOLID
PPT
Case Drupal: Todeschini
PDF
Ruby on rails como deve ser utilizada e onde
PPTX
DevOps e App Insights
PDF
LPUG Meetup #15 - Reinvenção do Liferay
PPTX
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
PPTX
Jsf com hibernate, spring security e maven
PPTX
apresentacao e instalacao do Joomla3
PPTX
Introdução ao desenvolvimento front end usando bootstrap e angular js
PPTX
3 apres pb_g4
PDF
Arquitetura de Microservicos
PDF
Domine a Observabilidade de aplicações Java no Kubernetes com Opentelemetry
Arquitetura de Micro Serviços
Single-SPA: Como este framework pode me ajudar na construção de Micro Front-Ends
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Application Insights
 
Micro frontend de um jeito que você nunca viu
DevOps... O caminho! - Monitoramento de aplicações com App Insights
Linguagil 2012: Desenvolvendo Aplicações RIA com Ext JS 4 e Touch 2
DevInCachu 2012: Desenvolvendo Aplicacoes RIA com ExtJS 4 e Sencha Touch 2
Escalando apps com React e Type Script e SOLID
Case Drupal: Todeschini
Ruby on rails como deve ser utilizada e onde
DevOps e App Insights
LPUG Meetup #15 - Reinvenção do Liferay
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
Jsf com hibernate, spring security e maven
apresentacao e instalacao do Joomla3
Introdução ao desenvolvimento front end usando bootstrap e angular js
3 apres pb_g4
Arquitetura de Microservicos
Domine a Observabilidade de aplicações Java no Kubernetes com Opentelemetry
Anúncio

Último (11)

PDF
Manejo integrado de pragas na cultura do algodão
PPTX
Eng. Software - pontos essenciais para o início
PDF
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
PPTX
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
PPTX
Arquitetura de computadores - Memórias Secundárias
PPTX
Utilizando code blockes por andre backes
PPTX
Tipos de servidor em redes de computador.pptx
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PPTX
Viasol Energia Solar -Soluções para geração e economia de energia
PPTX
Design - Introdução a Gestalt e teoria das formas
PDF
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
Manejo integrado de pragas na cultura do algodão
Eng. Software - pontos essenciais para o início
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
Arquitetura de computadores - Memórias Secundárias
Utilizando code blockes por andre backes
Tipos de servidor em redes de computador.pptx
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Viasol Energia Solar -Soluções para geração e economia de energia
Design - Introdução a Gestalt e teoria das formas
Termos utilizados na designação de relação entre pessoa e uma obra.pdf

Micro frontend