Chapter 2. Building microservices with Spring Boot
This chapter covers
- Learning the key characteristics of a microservice
- Understanding how microservices fit into a cloud architecture
- Decomposing a business domain into a set of microservices
- Implementing a simple microservice using Spring Boot
- Understanding the perspectives for building microservice-based applications
- Learning when not to use microservices
The history of software development is littered with the tales of large development projects that after an investment of millions of dollars and hundreds of thousands of software developer hours, and with many of the best and brightest minds in the industry working on them, somehow never managed to deliver anything of value to their customers and literally collapsed under their own complexity and weight.
These mammoth projects tended to follow large, traditional waterfall development methodologies that insisted that all the application’s requirements and design be defined at the beginning of the project. So much emphasis was placed on getting all the specifications for the software “correct” that there was little leeway to meet new business requirements, or refactor and learn from mistakes made in the early stages of development.