카카오 실시간 추천 시스템 '루빅스', 아키텍처와 운영 기술 공개
·2016.04.27 00:00
핵심 내용
카카오가 실시간 추천 시스템 '루빅스'의 아키텍처와 운영 기술을 공개하며, 99.998% 가용성과 피크타임 20만 QPS 처리 능력을 소개했다.
1 / 2
자세히 보기
카카오의 실시간 추천 시스템 '루빅스'는 사용자 피드백을 수 초 내에 반영하여 콘텐츠 랭킹에 적용하는 구조를 갖추고 있다. 메시지 큐로 Apache Kafka를, 데이터 스트림 처리로 Apache Spark Streaming을 사용하며, 개발팀의 스칼라 언어 숙련도를 고려해 Spark을 채택했다. 응답 속도 측면에서는 99%의 요청을 3ms 이내, 99.9999%의 요청을 150ms 이내로 처리한다. 확장성을 위해 상태가 없는(Stateless) 구조로 설계하고 분산 NoSQL 데이터베이스인 Couchbase를 활용하여, 2016년 4월 기준 피크타임에 20만 QPS를 처리하고 있다. 장애 내구성을 위해 Apache Mesos, Marathon, Aurora를 활용해 자동 복구 기능을 구현했으며, 마이크로 서비스 간 장애 전파를 차단하고 폴백 정책을 적용한다. 2016년 4월 기준 서비스 오픈 이후 99.998%의 가용성을 기록하고 있으며, 2015년 9월 이후 장애 시간은 0을 유지하고 있다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.