3 ms·
I've always seen OOP as the Actor model at the intra-program level, and Microservices as the Actor model at the inter-program level. So in a way it's K8s that i
by ItsMonkk 5y ago
I've always seen OOP as the Actor model at the intra-program level, and Microservices as the Actor model at the inter-program level. So in a way it's K8s that is the successor to OOP.
The Actor model can be good, and you should use the Actor model when it's needed. But the actor model is a decentralized approach, and centralized approaches will always be simpler. If it isn't needed, you shouldn't use it. When you go all-in on OOP or Microservices, you are adding accidental complexity to your stack.
- karmakaze 5y agoThe Actor model comes from CSP and OOP from Simula. The core difference is in the expectation of data handling rather than machine boundaries or scale. Certainly actors can run in a single process or OOP across machine boundaries. An object in OOP is meant to be a representation of some thing and all its state/behaviours. An actor has state but only one 'inbox' which of course could be abused to do any computation but that's not the motivation of the style. It's the complex or highly-interconnected relationships with OOP that makes it less suitable for distributed computing. K8s is about utilizing infrastructure and largely orthogonal.