[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 중 엄선한 뉴스들을 이메일로 보내드립니다.


오픈 소스 어플리케이션의 아키텍쳐
[동영상] 마틴 파울러가 말하는 소프트웨어 아키텍쳐의 중요성 [번역]
페이스북의 다운타임 없는 릴리즈 방법에 대한 논문
오픈소스를 비즈니스화 하는 법
시니어 개발자처럼 VSCode 사용하기 [번역]
좋은 Microcopy를 위한 팁
Responsively - 반응형 웹페이지 테스팅 도구 오픈소스
Vimac - 키보드로만 macOS 사용하기
타워 디펜스로 배우는 CSS FlexBox
대규모 환경에서 레디스 캐시 성능을 높이기
htop 3.0 릴리즈
ActivityWatch - 나는 하루 종일 무슨 일을 할까
2020년과 이후 JavaScript의 동향 - WebAssembly
사용자 암호 변경용 well-known URL 추가하기
Google People + AI Guidebook 소개 및 번역
8월30일 CenturyLink/Level(3) 인터넷 다운상황 분석
잘 안려진 10개의 Web API들
사람들은 구글 검색을 어떻게 사용하는가
리눅스 커널 개발 시작하기
file-type - Buffer안의 파일 타입 알아내기
Bootstrap Icons v1.0.0 정식 공개
왜 CSS ::before 는 input과 img에는 동작하지 않을까
OctoLinker - 깃헙에서 include문을 링크로 변환해주는 크롬확장
Minglr - 컨퍼런스후 참가자 끼리의 대화를 온라인으로
bref - AWS Lambda에서 PHP 사용하기
넷플릭스, 비가입자용 무료 시청 페이지 오픈
JavaScript 번들러로 본 조선시대 붕당의 이해
Gatus - 오픈소스 웹서비스 헬스 대쉬보드