Services vs. Components | Microservice Architecture — Ep. 2
What is the difference between a service and a component? Both should be cohesive and loosely coupled to the rest of application, both should solve a single problem, both have no hard limits on size. The key difference is the boundary.
Comparing to a component, a service:
- does not share memory with other processes
- is not accessed directly — only via a network
- fails independently, without crashing the entire application
- scales independently from the main process or other services
Components are in-process abstractions.
Services are distributed system units.