Usually developers apply a tailor-made solutions on application decomposition, but generally this process includes the following stages:
Business capabilities decomposition
Decomposition of the services particular for the certain actions (shipping service, catalogue etc.)
Че там дальше? я нашла такой порядок, но не понимаю
Another challenge is deciding how to partition the system into microservices. This is very much an art, but there are a number of strategies that can help:
- Decompose by business capability and define services corresponding to business capabilities.
- Decompose by domain-driven design subdomain.
- Decompose by verb or use case and define services that are responsible for particular actions. e.g. a Shipping Service that's responsible for shipping complete orders.
- Decompose by by nouns or resources by defining a service that is responsible for all operations on entities/resources of a given type. e.g. an Account Service that is responsible for managing user accounts.