AOS
주식회사 에오스모바일
← 개발자 노트
App · · 조회 10

FCM v1 HTTP API 전환에 따른 모바일 대용량 푸시 알림 서버 아키텍처 설계

구형 구글 FCM API 지원 중단에 따라 최신 OAuth2 기반 FCM v1 API로 마이그레이션하는 방법과 수만 명의 사용자에게 실시간 푸시를 동시 전송하는 아키텍처를 소개합니다.

구글이 기존의 FCM 레거시 HTTP API 지원을 종료함에 따라, 모든 모바일 앱 서버는 보안이 강화된 FCM v1 HTTP API로 전환해야 합니다. v1 API는 각 요청마다 비대칭 키 기반의 OAuth 2.0 액세스 토큰을 발급받아 헤더에 포함해야 하므로, 매 전송마다 토큰을 생성하면 심각한 서버 오버헤드가 발생합니다. 이를 최적화하기 위해 서버단에서 토큰을 인메모리(Redis)에 캐싱하고 만료 5분 전에 갱신하는 배치 프로세스가 필요합니다. 또한 대용량 사용자에게 푸시를 발송할 때 비동기 논블로킹(Non-blocking) 방식의 커넥션 풀을 활용하여 스레드 병목 현상을 방지하는 백엔드 아키텍처와 멀티캐스트(Multicast) 전송 기법의 코드를 설명합니다.