Revisiting Idempotence
Hooray for sending emails! Before closing, let’s call out our idempotence choice. This Component interacts with a third-party system that isn’t under our control (the email provider), so now you can build Components that interact with other third-party systems. This is one of the trickier parts of microComponent architectures (indeed, any architecture) because it involves state outside of our control. There is no way to guarantee that our system will agree with an external system about the state of the world, but by recording each step of our interaction with these external systems, we have a better shot at debugging when things go wrong.
When recording those interactions, failure can occur at any point along the chain. ...
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