Overview[edit | edit source]
Microservice is an architectural and organizational approach to software development. The hallmark of microservices is that they are “small, independent services … that communicate over well-defined APIs.” This kind of architecture “makes applications easier to scale and faster to develop, enabling innovation, and accelerating time-to-market for new features.” (AWS)
Microservices also make applications tougher to break because work one team does on one piece of the architecture shouldn’t break the whole application.
According to RedHat, what defines a microservice architectural approach as opposed to “more traditional, monolithic approaches is how it breaks an app down into its core functions.” Each functional part of the architecture “is called a service, and can be built and deployed independently, meaning individual services can function (and fail) without negatively affecting the others.” This enables organizations to tackle the “technology side of DevOps and make constant iteration and delivery (CI/CD) more seamless and achievable.”