Java Developer? Przejdź na wyższy poziom wiedzy 🔥💪  Sprawdź

Team Leader? Podnieś efektywność swojego zespołu 👌 Sprawdź

The Outbox Pattern – Komunikacja z zewnętrznymi systemami w ramach transakcji

The Outbox Pattern – Komunikacja z zewnętrznymi systemami w ramach transakcji

Często w ramach przetwarzania logiki biznesowej, oprócz modyfikacji różnych danych objętej transakcją pojawia się potrzeba wymiany danych lub komunikacji z zewnętrznymi systemami. Przykładem jest serwer mailowy, inny serwis, system kolejkowy. Wykonując operację z efektem ubocznym w transakcji, mogą wystąpić dwa potencjalne problemy:

  • Możesz nie mieć wpływu na działanie tych systemów. Na przykład serwer pocztowy nie odpowiada, pojawia się chwilowy zanik sieci, albo bardzo wolno odpowiada).
  • Wykonanie efektu ubocznego i wycofanie transakcji biznesowej. Nie można już odwrócić efektu uczonego (np. nie można wycofać już wysłanego maila).

Jak można sobie z tym poradzić? W tym wpisie opiszę wzorzec The Outbox Pattern.