book

[BOOK] 마이크로서비스 아키텍처 구축

[BOOK] 마이크로서비스 아키텍처 구축 – 샘 뉴먼 지음 / 정성권 옮김

[BOOK] Building Microservices
[BOOK] Building Microservices
부제: “대용량 시스템의 효율적인 분산 설계 기법”

아키텍트의 역할은 더 큰 그림을 보고 균형을 이해하는 것이다. (p. 57)

모바일 개발을 진행하면서 늘 고민하던 것이 서버 운영이었다. 고민이 많은 시점 각 개발 리더들에게 던져진 필독서! 모바일시대 서버들은 IDC 환경에서 클라우드 환경으로 넘어가고 있고, 백엔드를 구성하는 서비스도 모듈화가 필요하다. 꼭 서버에 국한되지 않더라도 아키텍트, 기술 리더의 역할에 대한 이야기도 있다.

기술 리더의 역할은 사람들이 스스로 비전을 이해하도록 그들의 성장을 돕고, 비전을 결정하고 구현하는데 적극적으로 참여할 수 있도록 만드는 것이다. (p. 60)


  1. 무리한 마이크로서비스의 도입보다는 모놀리스에서 시작해서 점진적으로 분해하는 것이 좋다. (p. 7)
  2. 응집력, 즉 관련된 코드들을 함께 그룹화하려는 힘은 마이크로서비스의 중요한 개념이다. (p. 29)
  3. 서비스가 무엇을 외부에 드러내고 무엇을 내부에 두어야 하는지 고민해야 한다. (p. 30)
  4. 변화의 속도가 빨라지고 아키텍처가 수용할 수 있는 환경이 더 유연해지면서 아키텍트의 역할 또한 변화하고 있다. (p. 43)
  5. 모든 사태에 대해 미리 계획하기보다는 과욕을 부리려는 충동을 절제하고 변화를 받아들이도록 해야한다. (p. 46)
  6. 시스템 설계상의 결정은 모두 트레이드오프와 관련된다. (p. 49)
  7. 기술 부채가 누적되면 현실 세계의 부채처럼 지속적인 비용이 발생하며 우리가 지불해야 하는 어떤 것이 된다. (p. 57)
  8. 느슨한 결합과 강한 응집력 (p. 64)
  9. DB란 사실상 공유된 매우 큰 API로서 상당히 깨지기 쉽다. (p.78)
  10. 미들웨어를 멍청하게, 엔드포인트를 지능적으로 만들라. (p. 96)
  11. 많은 문제의 해답은 결국 자동화로 귀결된다. (p. 175)
  12. 작은 것들을 모니터링하고 전체 상황을 볼 수 있도록 취합하라. (p. 218)
  13. 어떤 것이든 고장날 수 있다는 가정을 명심하는 것은 문제의 해결 방법을 다르게 생각하도록 만든다. (p. 276)
  14. 고장나서 작동하지 않는 시스템보다 느리게 동작하는 시스템이 훨씬 다루기 힘들다. (p.281)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: