LINE의 Pushsphere, 대량 푸시 알림, 이제 걱정 끝!
by DD
6개월 전
조회수 6
Pushsphere는 LINE의 푸시 알림 전송 시스템으로, 안정성과 속도를 모두 확보함
Armeria 기반의 Kotlin으로 개발되었으며, 자체 로드 밸런싱 및 재시도 로직을 탑재함
CDCP를 활용한 클라이언트 측 로드 밸런싱 도입으로 시스템 안정성을 향상시킴
Pushsphere 아키텍처 심층 분석
Pushsphere는 Armeria 기반으로 구축되어, Netty를 활용하여 높은 성능을 제공한다. 구체적으로 존 인식 라우팅을 통해 데이터 센터 간 트래픽을 효율적으로 관리한다. 따라서 클라이언트 측 로드 밸런싱을 통해 단일 장애점을 제거하고, CDCP를 사용하여 유연성을 확보했다.
푸시 알림 도달률 향상을 위한 기술
Pushsphere는 재시도 인식 로드 밸런서를 통해 실패한 엔드포인트를 제외하고, 할당량 제한을 고려한 자동 재시도 로직을 구현했다. 서킷 브레이커를 각 엔드포인트에 할당하여 APNs의 DNS 변화에 대응한다. 결과적으로 푸시 메시지 도달률을 극대화하고, 온콜 알람 발생 횟수를 획기적으로 줄였다.
Pushsphere의 미래와 개선 방향
Pushsphere는 Java API 사용성 개선, Live Activities 지원, 안전한 인증 정보 저장 등을 계획하고 있다. 또한, 오픈 소스화 및 Armeria와의 통합을 통해 개발 경험을 공유할 예정이다. 따라서 로드 밸런싱 구현체를 일반화하고, 관리 콘솔 구현도 고려하고 있다.