Since the term “microservices” hit the software industry like a bolt of lightning in 2014, technical professionals of all stripes have been analyzing this new architectural style from their own frames of reference. Having lived through the rise and fall of service-oriented architecture, I had the same reaction as many others: How does microservice architecture differ from SOA? The more I learned about the case studies that led to the creation of the term “microservices,” the more I recognized that this question would not capture the essence of this new software movement.
The first thing to recognize about the microservice movement is that it has been empirically defined. Microservice architecture emerged from a common set of patterns evident in companies like Amazon, Netflix, SoundCloud, and Gilt (now part of HBC Digital). Applications at these companies that were monolithic evolved over time into decomposed services that communicated via RESTful APIs and other network-based messaging protocols.