마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

[ push ] 카카오톡 푸시는 뭘로 만들어져 있을까요?

0 추천
안녕하세요

현재 FCM을 이용한 푸시를 사용하고 있는데요...

일부 푸시가 누락되는 경우가 종종 발생합니다...

100% 보장이 아니더라구요

근데, 카카오톡의 경우 메세지가 올 때 100% 푸시가 오는 것 같던데...

카카오톡은 백그라운드에서 따로 웹소켓 같은것이 도는 것일까요?

FCM만으로 100% 보장된 푸시메시지 수신이 가능할까요?

어떤 원리로 카카오톡은 푸시가 잘 오는지... 아시는 선배님 답변 부탁드립니다 꾸벅~
뱅스아부지 (410 포인트) 님이 2023년 12월 24일 질문

1개의 답변

0 추천
 
채택된 답변
fcm으로 메세지가 누수 되는건 구현하는 쪽 이슈로 생각됩니다. ask 받을 기간이나 메세지 큐 사이즈를 벗어나 삭제되지 않는 이상 메세지 받은 이후 ask를 해야 삭제 되게 만들면 fcm 받는 리시버가 종료 되어 못 받는것이면 몰라도 받지 않는 메세지가 사라지지는 않습니다. leak이 발생하는 라이브러리를 누가 쓰겠어요..ㅎㅎ

중소 기업에서야  푸시서버 유지 보수비보다 fcm쓰는게 저코스트라  fcm 같은 걸 쓰지만, 카카오 같이 대규모 서비스의 경우 fcm 같은걸 별도로 만들어 운영하는게 저렴하기 때문에, 별도 푸시 서버를 운영한다고 보시면 됩니다.
카카오 패키지명 같은건 예외로 들어가서 배터리 최적화 시에도 종료 안하고 계속 백그라운드에서 동작 되고 있을 가능성이 높아, 계속 소켓을 띄우는 방식도 가능은 한데, 소켓을 계속 열고 있는 건 서버의 소켓 리소스를 계속 잡고 있는거라. 서버 비용이 올라가, 보통 옵저버 패턴으로 https 메세지를 주고 받는 방식을 사용합니다.
익명사용자 님이 2023년 12월 28일 답변
뱅스아부지님이 1월 5일 채택됨
답변 감사드립니다
fcm메시지가 너무 오래 안와서 껏다켜면 안왔던 메시지가 들어오는 경우가 많더라구요... 딱히 fcm 구현이 잘못될 것은 없는 것 같은데... 네트워크 문제인지... 결국 socket으로 가야 할 듯 합니다 ㅠㅠ
...