카카오톡 메시징 시스템 재건축 이야기: C++ 서버를 Java및 Kotlin으로 / if(kakao)2022
if kakao 카카오 · YouTube
AI 핵심 요약
10년간 운영한 C++ 메시지 서버는 높은 성능을 냈지만, 복잡한 최적화 코드와 자체 프로토콜, 부족한 테스트·배포 체계, C++ 인력 수급 문제로 유지보수와 확장이 어려워졌다. 이를 해결하기 위해 Spring·Netty 기반 비즈니스 서버의 개발 방식을 참고해 서버를 Java와 Kotlin으로 재건축하고, HTTP·Swagger 문서화, Redis, Kubernetes·Argo CD, Jenkins와 테스트 자동화를 도입했다. 설정·세션 정보·사내 API 서버부터 단계적으로 전환했으며, Redis의 실제 트래픽 병목을 겪은 뒤 시나리오에 맞춘 벤치마크와 최적화를 거쳐 안정적으로 운영하고 있다. 메시지 릴레이 서버는 Kotlin과 ZGC를 적용해 성능을 검증 중이며, 발표 시점에는 멀티 디바이스 대응과 비동기 처리 최적화를 진행하고 있었다.
- 성능 최적화에 특화된 커스텀 구현은 장기적으로 코드 이해와 인력 교체, 기능 확장을 어렵게 만들 수 있습니다.
- 트래픽이 적고 장애 영향이 낮은 모듈부터 교체하면 위험을 줄이며 새 구조를 검증할 수 있습니다.
- Redis 도입 전에는 실제 서비스의 트래픽 패턴을 반영한 벤치마크가 필요하며, 예상 밖의 부하가 확인되면 롤백과 재검증을 고려해야 합니다.
- JVM 기반 고성능 서버에서는 GC 지연을 측정하고, G1GC와 ZGC 등 수집기별 특성을 부하 테스트로 비교해야 합니다.
- 기존 클라이언트와 서버가 교체 사실을 모르는 구조로 만들면 한 대씩 순차 전환해 장애 위험을 낮출 수 있습니다.
소개
10년간 카카오톡 메시지 릴레이를 책임져온 C++ 기반 서버를 JVM 기반 언어(JAVA 및 Kotlin)로 포팅하는 이야기를 합니다. 위 프로젝트를 진행하게 된 계기를 소프트웨어 엔지니어링 측면으로 설명하고, 현재까지 진척 상황에 대한 이야기를 공유합니다. #카카오톡 카카오톡 메시징 시스템을 개발 및 운영하는 시리우스 입니다. 발표자료 보기 👉https://speakerdeck.com/kakao/ifkakao22-28 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #ifkakao2022
비슷한 학습 자료
컨퍼런스 if kakao
카카오 T 대리 신규 커넥션 서버 개발기 / if(kakao)2022
컨퍼런스 if kakao
본 세션에서는 카카오 T 대리 서비스에서 소켓 통신을 담당하는 커넥션 서버를 왜 새롭게 개발하게 되었는지 말씀드리고, 새롭게 개발한 커넥션 서버의 설계와 그 구현 방법에 대해서 소개하겠습니다. 그리고 개발 과정에서 마주했던 문제들과 그 해결책들을 공유드리겠습니다. #NetworkSocket 카카오모빌리티에서 카카오 T 대리 서비스의 백엔드 개발을 맡고 있는 제이입니다. 발표자료 보기 👉https://speakerdeck.com/kakao/ifkakao22-34 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #ifkakao2022
백엔드 네트워크
컨퍼런스 if kakao
쿠버네티스 펀하고, 쿨하고, 섹시하게 / if(kakao)2022
컨퍼런스 if kakao
카카오 엔터프라이즈에서는 cluster api와 다양한 plugin을 이용하여, 개발자들에게 용도에 맞는 k8s를 제공하고 있습니다. 그리고 이 환경을 기반으로 모든 클라우드 배포 환경을 k8s를 이용하여 구현할 수 있었습니다. 카카오 엔터프라이즈에서 사용중인 선언적인 kubernetes as a service 개발 방법 공유! 이것이 선언적인 방법이니까! 음! #Kubernetes #ClusterAPI #Kubernetesasaservice 카카오엔터프라이즈에서 퍼블릭 클라우드 서비스를 개발하고 있는 벅과 곤잘레스 입니다. 카카오아이클라우드 최고에요~! 발표자료 보기 👉https://speakerdeck.com/kakao/ifkakao22-58 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #i...
데브옵스 · 인프라 클라우드
컨퍼런스 if kakao
카카오페이 서버 개발자로 일한다는 것 / if(kakao)2022
컨퍼런스 if kakao
카카오페이 서버 개발자들이 참여하는 프로젝트와 사용하는 기술, 협업 방식과 기술 문화에 대해 이야기합니다. #Backend #기술문화 #서비스개발 카카오페이 오프라인결제서비스에서 서버 개발을 하고 있는 Happy입니다. 발표자료 보기 👉https://speakerdeck.com/kakao/ifkakao22-102 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #ifkakao2022
백엔드 애자일 · 협업
컨퍼런스 if kakao
카프카, 대규모 클러스터 운영 후기 / if(kakao)2022
컨퍼런스 if kakao
카프카는 데이터 흐름을 모아주는 실시간 분산 스트리밍 플랫폼으로 이제는 대다수 기업이 필수적으로 활용하는 오픈소스가 되었습니다. 카카오 전반적인 업무서비스에서 이용하는 카프카 공용 대규모 클러스터를 운영하면서 고려하고 진행했던 것에 대해 공유하고자 합니다. #Kafka #Infrastructure 카카오에서 시스템엔지니어링 업무를 담당하고 있으며, 전사 Kafka 클러스터를 관리하고 있는 데이비스입니다. 발표자료 보기 👉https://speakerdeck.com/kakao/ifkakao22-66 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #ifkakao2022
백엔드 데브옵스 · 인프라
컨퍼런스 if kakao
카카오페이 앱 리빌딩 스토리 / if(kakao)2022
컨퍼런스 if kakao
카카오페이앱을 리빌딩하면서 겪은 과정들을 소개해 드리려고 합니다. #Android 카카오페이 안드로이드 주식 서비스 업무를 맡고 있는 스카일러입니다. 카카오페이 안드로이드 계정 서비스 업무를 맡고 있는 에디입니다. 발표자료 보기 👉https://speakerdeck.com/kakao/ifkakao22-91 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #ifkakao2022
모바일 앱 개발
컨퍼런스 if kakao
Preview Backend_1 @if(kakao)2022
컨퍼런스 if kakao
if(kakao)2022 컨퍼런스에서 Backend_1 관련 기술 발표 트랙을 소개합니다. 03:02 1. API 테스트 주도 개발의 시작 by 공진산(ronaldo.c) 카카오 테스트플랫폼셀에서 개발을 하고 있는 호날두입니다. 03:38 2.대량의 광고 데이터 필터 기능 개발기: ES한테 뺨맞고 Citus한테 안긴 썰 by 이동준(genos.lee) 카카오 crux개발2셀에서 서버 개발을 담당하고 있는 제노스라고 합니다. 04:17 3.Docker Swarm 기반 Redis SaaS 플랫폼 구축사례 by 이은미(silvia.lee) 카카오 시스템엔지니어와 레디스 플랫폼 엔지니어를 맡고있는 실비아입니다. 04:48 4. 카카오톡 메시징 시스템 재건축 이야기: C++ 서버를 Java및 Kotlin으로 by 남기영(sirius.nam) 카카오톡 메시징 시스템을 개발 및 운영하는 시리우스 입니다. 05:10 5. 카카오톡 메시징 지표 이상감지 시스템의 개선사례 by 김예솔(so...
백엔드 데이터베이스 소프트웨어 테스트