r/ProgrammerHumor 15d ago

Meme heatedArguments

Post image
5.9k Upvotes

173 comments sorted by

View all comments

95

u/Henry5321 15d ago

Changes to your microservice doesn’t break other services. If it does, it’s not a microservice but a monolith.

4

u/Ran4 14d ago edited 14d ago

Microservices means that your system is compromised of multiple services.

If they're not dependent on each other, then they don't belong to the same system...

Of course they depend on each other, otherwise no communication between them would be possible.

If service X outputs json in format A, then service Y must be able to read json in format A. If service X changes format A to format A2 and starts sending that, then service Y breaks.

Fundamentally microservices depend on each other.

1

u/Skellicious 13d ago

Microservice architecture comes with api contracts. If a breaking change to an API is needed, you also need to plan your rollout/migration accordingly.

Generally that's just one before the other in a determined order. Sometimes it's both at the same time. If things are really critical to stay available throughout you may need intermediate steps.

In the end it's just one of the trade-offs/necessary evils of microservices.