Todo Server com Actix
Nesta primeira parte vamos desenvolver um Todo Server aplicando um modelo semelhante ao MVC do projeto Phoenix, da comunidade Elixir. Este modelo foi explicado no capítulo Como este livro é organizado
, mas agora vamos detalhar um pouco quais serão as características deste serviço.
Vamos criar um RESTful Todo Server que seria facilmente utilizado em produção pois contará com uma série de recursos como:
- Endpoints de monitoramento:
ping
que funciona comohealth check
.~/ready
que funciona como disponibilidade do servico,readiness probe
.
- Endpoints para salvar as informações dos
TODO
s,create
show
show-by-id
eupdate
. - Sistema de logs, headers padrão e middlewares de autenticação.
- Endpoints de autenticação, com
signup
,login
elogout
utilizando tokensJWT
e banco de dados Postgres via Diesel. - Bastion para tornar o sistema tolerante a falhas.
- Dockerização de todos os serviços.
- CI executando as pipelines de teste.
- Serde para serialização e deserialização de Json.