DEV Community

Choosing the Right Software Architecture: Monolithic vs. Microservices

Zorian on January 31, 2024

If you're planning to build an app, one of the fundamental decisions you face is choosing the right architectural style. This decision is important...
Collapse
 
marflage profile image
Marflage

This article is succinct and gives away just the right amount of information for an overview.

Collapse
 
zorian profile image
Zorian

Hi! Great to know you find this article useful.

Collapse
 
john-doe profile image
Igor

Maintenance is simpler in Microservices architecture rather than in Monolith? Wrong! Buddy I have doubts that you really have worked on microservices and monolith production systems. Let me shed a light here for you. A project from my practice - we used to have 15 microservices for b2b solution, and over 100 CI/CD pipelines for them! Do you think our DevOps was happy about it? Now development. For microservices you have to have backward compatibility, so that your API interface must be stable as much as possible for all consumers. Eventually it will lead to mixture of obsolete and actual interfaces. If a change touches multiples microservices, it is a nightmare to synchronize all related projects. Same with refactoring. My suggestion is to be mindful, and decide in context, which architecture is better for our particular case.
I would say for monolith systems deployment and features delivery for big projects take longer time, scalability is worse, agile doesn't work good, however maintenance in well designed monolithic is much more easier and allows developers perform their work faster than in microservices architecture. Plus response time for end-user would be lower in monolith systems.

Collapse
 
zorian profile image
Zorian • Edited

Hi. Absolutely, selecting the appropriate software architecture hinges on the specific context and requirements of each individual application.