Identifying services
As mentioned in Chapter 1, “Overview” on page 1, microservices are described as being “small”. The size of a service should be reflected in its scope, rather than in the size of its codebase. A microservice should have a small, focused scope: it should do one thing, and do that thing well. How do you identify scopes for services when building a new application from scratch?
Eric Evans’ book, Domain-Driven Design, describes many concepts that are helpful when deciding how to build an application as a composition of independent pieces. Both the online retail store and Game On! will be referenced in the next few sections to explain why these concepts are useful for developing and maintaining microservice architectures in the long term.