[GN#61] 오픈소스 어플리케이션의 아키텍쳐

2020-08-31 ~ 2020-09-06 사이의 주요 뉴스들
건축가나 건축을 공부하는 사람들은 모두 다른 건물들을 보고 공부하고 그 비평을 연구하는 데 반해서, 소프트웨어 개발자들은 다른 위대한 프로그램을 잘 공부하지 않죠. 이걸 바꾸기 위해 만들어진 책이 AOSA(The Architecture of Open Source Applications) 입니다. 유명한 오픈소스가 어떻게 작성되었고, 그 개발과정에서 알게 된 교훈들을 정리해서 주니어 개발자부터 시니어들까지 모두 다양한 것들을 배울 수 있게 합니다. 이 책은 전체 내용이 무료로 공개되어서 웹에서 볼 수 있고, 1권은 번역도 나와있습니다. 마침 왜 소프트웨어 아키텍처가 중요한지 마틴 파울러가 설명한 동영상도 한글 자막버전이 올라왔으니 두 개의 링크를 묶어서 보시면 좋을 거 같아요.

월간 사용자 24억명의 페이스북은 서비스 규모에 맞게 수십만대의 서버를 운영하면서도 잦은 업데이트를 하는 것으로 유명한데요. 일주일에 100번 이상 배포가 진행되면서 서버 및 로드밸런서, 프록시등 더 많은 숫자의 머신들도 재시작이 되는데 이때 다운타임을 줄이기 위한 방법을 정리한 논문이 공개가 되었습니다. Blue/Green 배포, Rolling Updates, Hot Restart 세 가지 방식에 대해서 정리하고 여기서 발생하는 문제점들을 해결한 방식을 잘 설명하고 있어서 규모가 있는 서비스에서는 참고하시면 좋겠습니다.

오픈소스는 누구나 무료로 쓸 수 있다는 점에서 좋지만, 클라우드들이 서비스로 만들면서 오픈소스를 만드는 측이 아닌 클라우드 업체가 수익을 가져가게 되버리는 이슈가 생겼습니다. 많이 쓰시는 MySQL, MongoDB, ElasticSearch 들이 다 그런 사례인데요. 이에 Chef의 CTO는 오픈소스를 비즈니스화 할 때 Elastic/Nginx의 오픈코어 모델 보다는 RedHat 모델을 따르라고 설명하고 있습니다. 이 두 모델을 비교해서 알아두는 것은 드롭박스의 Nginx 와 Envoy 사례처럼 오픈소스 솔루션을 선택할 때 도움이 될 것 같습니다.


✓ 사내에서 슬랙을 쓰신다면 뉴스채널에 GeekNews SlackBot 을 추가하여 편하게 새 글을 받아보시고, 멤버들에게도 공유해주세요.
✓ 주위분들께 긱뉴스 위클리 - https://news.hada.io/weekly 를 추천해 주세요.
✓ 스팸함에 들어가지 않게 news@hada.io 를 주소록에 추가해주세요.
Twitter , Facebook 에서도 긱뉴스를 받아 보실 수 있습니다.
✓ 긱뉴스를 팟캐스트로 들어보세요 : 애플, 팟티에서 듣기, 팟빵, , 구글, 네이버 오디오클립, 유튜브

매주 월요일 아침, 지난 일주일간의 GeekNews 중 엄선한 뉴스들을 이메일로 보내드립니다.