어떤 개발툴을 다운받으려 할 때 Canary라고 부르는 것들이 있습니다. 예를들어, 구글에서는 "가볍게 테스트된 빌드의 최신 기능을 이용하세요"라면서 Android Studio Canary 버전을 공개하였습니다. 또, MS에서는 Chromium Edge browser를 공개하면서 카나리(Canary) 버전을 릴리즈했습니다. 여러 회사에서 사용하는 것을 보고 카나리는 특정 회사에서 쓰는 것이 아니고, 테스트 버전을 의미한다는 것을 알았습니다. 그럼 카나리아는 정확히 무엇을 말하는 것일까요? 저 용어는 어디서 온 것일까요?
카나리는 무엇인가?
Canary development, test라는 용어가 있습니다. 안정적인 버전을 릴리즈하기 전에 테스트버전을 일부 사용자에게 배포하는 것을 말합니다. 만약 카나리 버전에 심각한 버그가 발생된다고 해도 사용하는 사용자가 적기 때문에 피해를 최소화할 수 있습니다. 또한 안정적인 버전과 테스트 버전이 모두 배포된 상태이기 때문에 A/B 테스트가 가능합니다.
카나리(Canary)의 기원
Canary의 사전적 의미는 카나리아
라는 새 입니다. 카나리아는 석탄 광산에서 유독가스 누출의 위험을 알리는 용도로 사용되었습니다.
탄광에서 유독가스가 많이 발생하면 사람이 죽을 수 있는데요, 카나리아가 사람보다 먼저 죽기 때문에, 이것으로 유독가스 누출의 지표로 사용할 수 있었습니다.
위처럼 일부에게 배포하는 개발방법에 카나리아 라는 새의 이름을 붙였습니다. 심각한 버그가 발생했을 때, 매우 적은 소수의 사용자만 피해를 보는 것이 카나리아가 탄광에서 광부들에게 위험을 알리는 것과 비슷했기 때문입니다.
Recommended Posts:
- SSH key 생성하고 GitHub에 등록
- GMT, UTC의 차이점
- AMP 사이트에 Facebook Comments(댓글) 달기
- Desktop AMP 버전에 Adsense 적용하기
- GoDaddy -> NameCheap 도메인 이전하기
- clean-css로 CSS 파일을 경량화(minify)하는 방법
- Maven으로 Java프로젝트 build하는 방법 (리눅스)
- Selenium - 페이지 로딩이 완료될 때까지 기다리기 (python)
- X-Bows keyboard 구입 및 사용 후기
- 나에게 맞는 인체공학(ergonomic) 키보드 찾기
- Python3.7 Flask를 Google App Engine에 deploy하는 방법
- 자주 사용하는 GCP(Google cloud platform) 명령어 정리
- Nginx에서 Letsencrypt를 통해 SSL을 적용하는 방법