마이크로서비스 인 액션 – MicroServices In Action

어제 James Lewis와 Martin Fowler의 마이크로서비스 한국어 번역 (원문)을 소개했는데 많은 분들이 공유해 주셨더군요.

그런데, 반응 중에는 기계 번역 같다 내용이 어렵다 하는 분들이 좀 있으셨어요. 그도 그런것이 아키텍트들이 어떤 시스템을 설명할 때, 추상화(?) 시키는 버릇이 있어 쉽게 쓰면 알아 들을 수 있는 이야기도 어려운 용어를 쓰면서 더 어렵게 쓰는 것 같습니다.

마이크로서비스로 구현된 Netflix의 아키텍쳐 구조도
아무튼 개발자들이 알아먹을 수 있게 코드로 보여주거나, 아니면 그림으로 실제 사례를 소개하거나 좀 더 쉽게 잘 이야기하는 글을 소개해야 하는데 죄송합니다. 그래서 A/S로 몇 가지 더 참고 자료를 소개합니다.

국내 소개 자료

국내에서 마이크로서비스를 주도적으로 소개해 주시는 분들이 세 분이 계십니다. 바로 조대협님, 정도현님 그리고 안재우님이신데요. 아래에 대표적인 소개글이랑 슬라이드를 우선 먼저 알려드리겠습니다.

조대협, 대용량 웹서비스를 위한 마이크로 서비스 아키텍쳐의 이해

이 글은 조대협님이 마틴 파울러의 글을 좀 더 쉽게 예를 들어 구성한 것으로 실제로 어떤 프로젝트에 마이크로서비스가 구현됐을 때 모양을 개발자들이 이해하기 쉽게 쓴 글로서 일독을 추천합니다. 특히, 마이크로서비스의 단점이라고 생각 되는 부분과 팀 구성 및 개발팀 운영에 대한 방식도 잘 설명되어 있습니다.

정도현, 마이크로서비스가 가져올 미래의 개발 패러다임

이 글은 정도현님이 마이크로서비스에 대한 방대한 참고 문헌의 글을 잘 요약한 것으로 간단한 정의와 특징 구현 요소를 그리고 최근 동향까지 간략하게 잘 풀어 주었습니다. 마지막에 있는 참고 링크들은 한번씩 꼭 읽어 보아야 할 것 같습니다. 또한 정도현님이 만드신 MSA를 이용해 구현하는 고가용/고확장성 서비스 슬라이드도 참고하시면 좋습니다.

안재우, 마이크로서비스 아키텍처로 개발하기
닷넷엑스퍼트로 유명하신 안재우님이 최근 오픈테크넷서밋에서 SK플래닛에서의 직접 이러한 아키텍쳐를 적용해 봤을 때 경험을 소개한 자료로 아마 개발자들이 보면 단박에 이해할 만큼 유용한 것 같습니다.

사실 이러한 새로운 아키텍쳐를 도입하는 건 내부에 많은 반대에 부딪히게 되는데, 기술적 변화를 이끌어 가기라는 이야기를 어떻게 변화를 적용했는가 하는 점도 함께 보시면 좋을 듯 하네요.

해외 사례 자료

이제 대충 내용은 알겠는데, 도대체 어떤 해외 사례가 있길래 이렇게 마이크로서비스가 입방아에 오르는지 실체가 없다고 생각되시는 분들을 위해 몇몇 주요 공개 회사들의 사례들을 소개합니다.

넷플릭스의 사례
넷플릭스는 마이크로서비스를 언급할 때 가장 먼저 제시하는 사례입니다. 아래 몇 가지 동영상에서 직접 자신들의 이야기를 발표한 사례를 보실 수 있습니다.

트위터의 사례
트위터 역시 API 서비스로 성장한 회사로서 자체적으로 다양한 마이크로 서비스를 구성하고 이를 연계해서 서비스하고 있습니다.

그 밖의 회사들

아래 자료는 넷플릭스의 유명 아키텍트였던 Adrian Cockcroft가 작년 DockerCon에서 발표한 자료 중에 해외 사례와 관련 된 부분만 발췌한 것입니다. 위의 업체들의 아키텍쳐가 설명되어 있습니다.

아드리안은 클라우드 컴퓨팅과 마이크로서비스에 관한 한 최고의 아키텍트 중 한 분으로 설명도 매우 쉽게 하시기 때문에, 작년 도커콘 동영상을 한번 보시면 매우 유용할 것 같습니다.

아래는 제가 발표한 클라우드 기반 마이크로서비스 아키텍처 구현 사례에 대한 발표 자료 및 영상입니다.

더 좋은 자료들이 있으면 추가적으로 여기에 업데이트 할 예정이니, 여러분들도 많이 알려주세요.

p.s. 최근에 오라일리에서 Building Microservices라는 신간이 나왔습니다만 솔직히 좀 장황하고 내용이 어려운 것 같습니다. (저자가 James Lewis와 같은 회사인 Thoghtworks의 아키텍트라서 더 그런 듯 ㅎㅎ)

- ;

Disclaimer- 본 글은 개인적인 의견일 뿐 제가 재직했거나 하고 있는 기업의 공식 입장을 대변하거나 그 의견을 반영하는 것이 아닙니다. 사실 확인 및 개인 투자의 판단에 대해서는 독자 개인의 책임에 있으며, 상업적 활용 및 뉴스 매체의 인용 역시 금지함을 양해해 주시기 바랍니다. (The opinions expressed here are my own and do not necessarily represent those of current or past employers. Please note that you are solely responsible for your judgment on chcking facts for your investiments and prohibit your citations as commercial content or news sources.)


여러분의 생각

  1. architect가 맞지 않나 해서요. 딴지는 절대 아니고요 ^^ 차니님의 글은 저 포함 많은 분들이 보고 배우는 데, 혹시나 잘못된 용어가 퍼질 수도 있지 않나 해서 드린 댓글입니다. ^^

  2. 그럼 저도 다시 마소 페북에 공유토록 하겠습니다. ^.^

  3. 요즘 관심있게 보고 있는 주제인데, 좋은 정보 항상 감사드립니다. :)

의견 쓰기

이름* 이메일* 홈페이지(선택)