Capítulo 6. Fluxo de trabalho
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Nos dois capítulos anteriores, vimos aspectos dos microsserviços relacionados com a forma como um microsserviço fala com outro. Mas o que acontece quando queremos que vários microsserviços colaborem, talvez para implementar um processo de negócios? Como modelamos e implementamos esses tipos de fluxos de trabalho em sistemas distribuídos pode ser uma coisa complicada de se acertar.
Neste capítulo, veremos as armadilhas associadas à utilização de transacções distribuídas para resolver este problema e veremos também as sagas - um conceito que nos pode ajudar a modelar os nossos fluxos de trabalho de microsserviço de uma forma muito mais satisfatória.
Transacções de bases de dados
Em termos genéricos, quando pensamos numa transação no contexto da informática, pensamos numa ou mais acções que vão ocorrer e que queremos tratar como uma única unidade. Ao efetuar várias alterações como parte da mesma operação global, queremos confirmar se todas as alterações foram efectuadas. Também queremos uma maneira de limpar o que aconteceu se ocorrer um erro enquanto essas alterações estão acontecendo. Normalmente, isso resulta no uso de algo como uma transação de banco de dados.
Com uma base de dados, utilizamos uma transação para garantir que uma ou mais alterações de estado foram efectuadas com êxito. Isto pode incluir a remoção, inserção ou alteração ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access