The concepts are distributed vs remoting. You can even setup API’s to do both. And I said can. Not that it should do both.
Martin Fowler is wrong in using monolith. He should say big-ball-of-mud. Linux 1.2a kernel was the last monolith. And the famous debate changed it, to this day, from being one.
gRPC, GraphQL, and message queues/event stores are not microservices. No matter how closely you try to get it to fit. Or even by extending microservices.
These are all remoting
Distributed means a registry like npmjs, nuget, github/gitlab, local, has a copy you pull into your project and use. Or an installer you download.
The question isn’t how remoting and distributed are different. But how are they similar? How are they the same?
It a website needs to do something secure, use remoting.
If functionality needs distributed, use distributed.
If what that otherwise distributed resource needs protected, use remoting.
There is more value in discussing the type of app you are writing:
gRPC, GraphQL, and message queues/event stores are not microservices.
Right, and noone said it was. Instead, what the author said is these technologies help you keep headcounts small, which helps you avoiding the multi-team (and thus microservices) necessity.
Distributed means a registry like npmjs, ...
That would mean blockchains / Starlink / cell service / the us postal service aren't distributed systems. I would look up the definition of distributed system again. Distrubuted systems (even distributed computing) are so much older than package registries.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Stop using the terms monolith and microservice.
The concepts are distributed vs remoting. You can even setup API’s to do both. And I said can. Not that it should do both.
Martin Fowler is wrong in using monolith. He should say big-ball-of-mud. Linux 1.2a kernel was the last monolith. And the famous debate changed it, to this day, from being one.
gRPC, GraphQL, and message queues/event stores are not microservices. No matter how closely you try to get it to fit. Or even by extending microservices.
These are all remoting
Distributed means a registry like npmjs, nuget, github/gitlab, local, has a copy you pull into your project and use. Or an installer you download.
The question isn’t how remoting and distributed are different. But how are they similar? How are they the same?
It a website needs to do something secure, use remoting.
If functionality needs distributed, use distributed.
If what that otherwise distributed resource needs protected, use remoting.
There is more value in discussing the type of app you are writing:
Right, and noone said it was. Instead, what the author said is these technologies help you keep headcounts small, which helps you avoiding the multi-team (and thus microservices) necessity.
That would mean blockchains / Starlink / cell service / the us postal service aren't distributed systems. I would look up the definition of distributed system again. Distrubuted systems (even distributed computing) are so much older than package registries.