Full Stack Development with JHipster
上QQ阅读APP看书,第一时间看更新

When to choose a monolithic architecture

The following list can be used as a general guide when choosing a monolithic architecture. This is not a definitive list but gives an idea of when to go with a monolithic architecture over microservices:

  • When the application scope is small and well defined, and you are sure that the application will not grow tremendously in terms of features. For example, a blog, a simple online shopping website, a simple CRUD application, and so on.
  • When the team size is small, say less than eight people (it's not a hard limit but rather practical).
  • When the average skill set of the team is either novice or intermediate.
  • When time to market is critical.
  • When you do not want to spend too much on infrastructure, monitoring, and so on.
  • When your user base is rather small and you do not expect them to grow. For example, an enterprise app targeting a specific set of users.

In most practical use cases, a monolithic architecture would suffice. Read on to the next section to see when you should consider a microservice architecture over monolithic.