DEV Community

Discussion on: Where did Microservices go

Collapse
 
tamusjroyce profile image
tamusjroyce

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:

  • Is a website too complex?
  • Should I create a desktop app? At least at first
  • etc…
Collapse
 
econic profile image
Aimo Künkel

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.