Gebeurtenisgestuurde architectuur en koppeling: je bent minder ontkoppeld dan je denkt.
- door Derek Comartin
- Gepubliceerd op Derek Comartin (CodeOpinion)
- Toegevoegd op
- Uncategorized
Dus je hebt je monolithische architectuur opgesplitst. Je hebt een message broker geïntroduceerd. Je gebruikt een event-driven architectuur. Er vliegen overal gebeurtenissen rond.
Jullie zijn nu uit elkaar, toch?
Maar op de een of andere manier voelt niets beter, omdat je systeem nog steeds erg kwetsbaar is.
YouTube
Bekijk mijn YouTube-kanaal , waar ik allerlei content over softwarearchitectuur en -ontwerp plaats, waaronder deze video waarin alles uit dit bericht wordt uitgelegd.
CRUD-gebeurtenissen
Het probleem zit hem mogelijk in de evenementen die je publiceert:
ShipmentStatusChangedShipmentAddressUpdatedEstimatedDeliveryDateChangedCarrierIdUpdated
Elke andere dienst abonneert zich op deze gebeurtenissen en bewaart een eigen lokale kopie van de verzendgegevens.
Je denkt misschien dat je je systeem ontkoppelt omdat je gebeurtenissen naar verschillende afnemers publiceert, maar dat is niet zo. In werkelijkheid heb je alleen maar data overal gedupliceerd.
Wat betekent 'Verzendstatus gewijzigd' eigenlijk?
Stel dat we een nieuwe verzendstatus introduceren…