Monolith | Microservices |
Self-contained application that is deployed as one unit | Independently-deployed applications that communicate through networks |
Pros
|
Pros
|
Cons
|
Microservice Benefits
- Scale
Lean applications that are able to tailor their logic and infrastructure to their specific business needs. More-easily architected for horizontally-scaling. - Development in Parallel
Teams can develop and deploy their own codebases. - Cost Effectiveness
Utilize resources only for what is necessary for the specific microservice. - Flexibility Choose technologies that make the most sense for the team and business.
Monolith or Microservices
You are the lone developer in charge of a small project that isn’t expected to grow in size. Should you use monolith or microservice architecture? Why?
Answer: Monolith
An organization wants to build a new platform that involves collaboration between a data team that uses Python and an applications team that uses NodeJS. Should the organization use monolith or microservice architecture? Why?
Answer: microservice
- Parallel Development
- Flexibility
You are working for an early-stage startup with constantly changing business requirements. Should your team use monolith or microservice architecture? Why?
Answer: Monolith
- Easy to setup, won't spend too much time
You are working with one other developer to build the first iteration of a proof-of-concept application as part of a race to be the first to market. Should you use monolith or microservice architecture? Why?
Answer: monolith
You are working on a hobby project that is very limited in financial resources. Should you use monolith or microservice architecture? Why?
Answer: monolith