DEV Community

Determinado 96
Determinado 96

Posted on

Um resumo dos motivos para utilizar os commits antes das operações de E/S.

O que são operações de E/S?

São todas as operações em que um computador envia ou recebe dados para algum lugar fora dele mesmo. Um exemplo comum em sistemas é o envio de e-mails, que envolve comunicação com servidores externos.

Por que fazer o commit antes do envio de e-mail?

Operações de E/S podem demorar ou falhar (ex.: timeout, problemas de rede). Desta forma, manter a E/S dentro de uma transação deixa o banco aberto por mais tempo, aumentando risco de:

  • Deadlocks.
  • Travamentos.
  • Inconsistência de dados (ex.: o e-mail é enviado, mas o commit falha).

Fazendo o commit antes da operação de E/S, garantimos que:

  • O banco de dados já está atualizado.
  • A operação de E/S não bloqueia nem compromete a transação.

Top comments (0)