1 Microservices: an architecture for fast flow
This chapter covers
- The primary motivation for using the microservice architecture
- The key characteristics of microservice architecture
- The obstacles to overcome when using the microservice architecture
- When and when not to use the microservice architecture
A lot has been said and written about the microservice architecture over the years. There are conflicting claims about when to use it. Some in the community say it’s the future of software development. There are others who even argue it’s an anti-pattern. The reality, as always, is it depends. But upon what? When should you use the microservice architecture? What problems does it solve and how?
The main motivation for using the microservice is to solve a problem that you are most likely facing: the need to deliver software faster, more reliably and with less risk so that your business can thrive in today’s world. While you might be able to accelerate development by, as a manager once put it, buckling down (or is it up?) and burning the midnight oil, any improvements are likely to be short-lived, and you will most likely burn out. For lasting improvements, you need to change the way you develop software, and, in some cases, the architecture of the software itself.