Levantamento requisito
Funcional
- Encurtar URL
- Informar URL encurtada ao usuário
- Opção de copiar a url encurtada
Não funcional
- o sistema deve ser alto disponivel
- o sistema deve ter capacidade em ter leitura em mais de 10 milhoes simultaneamente
- as urls deve ser permanente durante 2 anos
- o sistema deve ser escalavel
- o sistema deve ter uma latencia abaixo de 200ms
- o sistema deve ser consistente
- o sistema deve ter a inteligente em tomar decisões quando precisar escala ou não
Decisões técnica
- o sistema vai ter o banco de dados cassandra pela capacidade de leitura e armazenamento
- o sistema será desenvolvido por kubernestes para ter os cluster para gerenciamento e orquestação para escalar seus cluster
- o sistema tera um load balance para balancear a carga em momentos de picos
- o sistema terá auto scaling para escala
- o sistema estara no provedor da aws