Cap 1 Flashcards
O que é um paraíso monolítico?
Desenvolvimento simples Atualização Fácil Teste mais direto Deploy mais direto Fáceis de escalar, simplesmente replicando máquinas
O que é um inferno monolítico?
Uma base de código gigante
Como a complexidade de uma base de código gigante intimida o time de desenvolvimento?
Por ser muito difícil de compreender fica cada vez mais difícil fazer alguma mudança ou arrumar um bug
Como a complexidade de uma base de código gigante diminui a velocidade do desenvolvimento?
Regras ficam difíceis de se entender e qualquer nova funcionalidade precisa de um conhecimento cada vez maior da aplicação
Como a complexidade de uma base de código gigante prejudica o caminho do commit ao deploy?
Os deploys são feitos poucas vezes em um mês
* O processo é lento e pode ocorrer muitas falhas, por isso precisa ser bem testado manualmente.
* Continuous Delivery se torna impossível
Quando se usa features, como o código é grande acontecem muitos conflitos
Como a complexidade de uma base de código gigante dificulta a qualidade do produto entregue?
Dificuldade em testar uma aplicação muito grande
Como a complexidade de uma base de código gigante prende o produto a uma tecnologia obsoleta?
Frameworks, linguagems, ferramentas são difĩceis de alterar
Microserviços são requisitos funcionais e qual o efeito disso?
Não, se trata de requisitos não-funcionais de qualidade de serviço
- Manutenabilidade - Extensibilidade - Testabilidade
Quando a arquitetura de microserviços é necessária?
Quando testes de aceitação já não são suficientes para manter o monolíto
Muitas pessoas trabalharem no mesmo código
Ficar preso numa tecnologia obsoleta
O que é um microserviço?
É um estilo arquitetural onde uma aplicação é decomposta em um conjunto de serviços, coesos em uma única responsabilidade.
Qual a relaçao do microserviço do model de escala em cubo?
Escala no eixo Y e X
O que é o modelo de cubo em escala?
Uma escala em 3 eixos:
X - escala pelo número de instâncias
Y - escala pela decomposição em serviços
Z - escala baseado em atributos de url (particionamento de dados)