Pytanie na dziś: co lepiej zrobić, wysłać komendę, czy wygenerować nowe zdarzenie? Jakie konsekwencje będzie miało pierwsza, a jakie druga opcja? Dzisiaj odpowiemy sobie na to pytanie.
W poprzednim wpisie zajmowaliśmy się tematem przetwarzania asynchronicznego wiadomości za pomocą komponentu Symfony Messenger. Czy wiecie, że Messenger służy również do komunikacji dwóch mikroserwisów ze sobą? Nie? No to zaraz się dowiecie 😉
Główną rolą Modularnego Monolitu jest przygotowanie aplikacji do ewentualnego wydzielania serwisów z istniejących modułów. Nie zawsze jest to prosty proces, dlatego postanowiłem przyjrzeć się mu nieco bliżej na łamach bloga.
Niezależnie od tego, z którego frameworka korzystamy, zawsze powinniśmy promować własną refleksję ponad wszystko. Nawet pracując w Symfony, który uchodzi za najlepsze narzędzie w swojej kategorii, jesteśmy w stanie stworzyć niefajny kod. Dziś poruszymy temat reprezentatywnego przykładu, który potwierdza tą tezę.
Głównym zadaniem architektury opartej o Modularny Monolit jest przygotowanie aplikacji do migrowania w stronę architektury Mikroserwisowej. Jednak zanim podzielimy aplikację na gromadkę serwisów, powinniśmy przemyśleć, w jaki sposób będziemy je ze sobą komunikować. Ponieważ nie jest to łatwe zadanie, przyjrzyjmy się potencjalnym problemom, z którymi możemy spotkać się, kiedy wybierzemy już którąś opcję.