Microservice Trade-Offs
Many development teams have found the microservices architectural style to be a superior approach to a monolithic architecture. But other teams have found them to be a productivity-sapping burden. Like any architectural style, microservices bring costs and benefits. To make a sensible choice you have to understand these and apply them to your specific context.

01 July 2015
- Strong Module Boundaries: Microservices reinforce modular structure, which is particularly important for larger teams.
- Independent Deployment: Simple services are easier to deploy, and since they are autonomous, are less likely to cause system failures when they go wrong.
- Technology Diversity: With microservices you can mix multiple languages, development frameworks and data-storage technologies.
Microservices provide benefits…






- Distribution: Distributed systems are harder to program, since remote calls are slow and are always at risk of failure.
- Eventual Consistency: Maintaining strong consistency is extremely difficult for a distributed system, which means everyone has to manage eventual consistency.
- Operational Complexity: You need a mature operations team to manage lots of services, which are being redeployed regularly.
…but come with costs






'개발자' 카테고리의 다른 글
| (번역) 서버리스 아키텍처 (1) | 2016.06.24 |
|---|---|
| 서버리스(Serverless)가 온다! (1) | 2016.06.15 |
| 자바가 아닌 다른 언어를 배워야 하는 이유 (0) | 2016.05.12 |
| <웹진 172호 : 인사이드 이슈> 오픈 소스, 새로운 패러다임을 만들다 (0) | 2016.05.12 |
| 프로그래밍 입문자가 가장 원하는 직업은? (0) | 2016.05.09 |