Jim Webber thinks that the major difference between components and services is that communication with a service is stateless. I disagree — that would turn components where communication is stateless into services automatically as well, right? I believe there is a number of issues that separate the two concepts, but if I were forced to narrow it down to just one, I would say that a component has a contract not only with the outside world, but also with the component platform into which it is deployed. A service knows no such thing.
This is a single archived entry from Stefan Tilkov’s blog. For more up-to-date content, check out my author page at INNOQ, which has more information about me and also contains a list of published talks, podcasts, and articles. Or you can check out the full archive.