Skip to content

Instantly share code, notes, and snippets.

@octaviogb
Last active August 7, 2018 21:59
Show Gist options
  • Save octaviogb/33ab64a09654c5320c93fa70953db43f to your computer and use it in GitHub Desktop.
Save octaviogb/33ab64a09654c5320c93fa70953db43f to your computer and use it in GitHub Desktop.
Começando a falar de microservices

Quando não usar microserviços?

  • meu monolito funciona bem em uma máquina barata
  • meu monolito todas as funcionalidades do meu monolito consomem a mesma quantidade de recursos
  • meu monolito tem uma arquitetura limpa e não me dá trabalho pra manter
  • tenho um time muito especializado na linguagem que usamos e nao queremos usar outras tecnologias
  • minha equipe é de coders, eles não monitoram plataforma nem tem conhecimento de devops
  • quero ter apenas um banco de dados para ficar fazendo query de noite, vendo tudo em tempo real
  • quero ter muitas funcionalidades centralizadas em uma plataforma

Quais vantagens de arquiteturas de microserviço?

  • distribuir a carga de diferentes funcionalidades em containers especificados para ela. Ex.: 3 máquinas cuidando de login, 1 cuidando de cadastro
  • poder utilizar a ferramenta "certa" para o problema certo. Ex.: ruby para a home, java para batch, cassandra para o feed, mongodb para perfil, node para área logada
  • descartar rápido. Ex.: quero trocar o sistema de login por estar lento... é mais rápido refazer do que arrumar

Quais desvantagens de arquiteturas de microserviço?

  • monitorar é um inferno
  • rastrear erros é um inferno
  • conciliar muitos bancos de dados é um inferno
  • deploy é um inferno
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment