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

GCM 푸시 지연 및 누락

0 추천
GCM으로 푸시를 보내면 잘 오다가 어느순간 부터 푸시가 안옵니다.

GCM 로그는 정상전송 success 1 로 나옵니다.

 

문제가 되는 현재 상태가

계속 푸시를 보내면 잘 오다가 어느 순간부터 푸시가 안옵니다.

그렇게 계속 안오다가 어느순간 다시 푸시가 오기 시작합니다.

시간은 들죽날죽 한데 10여분에서 20여분까지 지연됐다가 수신됩니다.

잘 올때는 즉시 수신이 되고 잘 안올때는 위와 같이 몇 십분씩 쌓여있다가 옵니다.

(이때 일부 밀렸던 푸시가 한번에 오는 증상이 있습니다.)

 

현재 두대의 단말기로 테스트 중인데 증상은 동일 합니다.

안오기 시작하면 두대다 계속 안오고(몇십분씩)

오기 시작하면 두대다 계속 잘 오고 합니다.

 

제가 클라이언트를 잘못 구현한 걸까요?

아니면 무슨 문제일까요?..
익명사용자 님이 2016년 3월 22일 질문
2016년 3월 22일 수정

2개의 답변

0 추천
gcm이 누락이 좀 있더군요...
중견수 (5,600 포인트) 님이 2016년 3월 22일 답변
0 추천
음...

gcm send 함수는 리턴값이 있습니다.

리턴값은 api key가 유효하지 않다던지 수신측 토큰이 유효하지 않다던지 하는 식입니다.

발송측의 점검은 해보셨는지요?

즉, 질문자님 GCM발송 측 네트워크 상태를 말씀드리는 겁니다.

저도 GCM을 빈번하게 사용하는 어플을 다루는데 비슷비슷한 내용을 단시간에 몇천개씩 쏘는데 딱한번 문제 되었던게 발송측 서버가 부하를 견디지 못해 누락 및 지연되는 경우였습니다.
비애천사 (12,080 포인트) 님이 2016년 3월 23일 답변
리턴값은 정상입니다.

어제 수십번씩 연속발송으로 수천번(?) 정도는 테스트 했는데
잘 나가다가 한번씩 걸릴때가 있습니다.
(정상리턴으로 나오나 실제 못 받을 때)

한번걸리면 짧게는 몇분에서 길게는 십몇분까지 계속 안나갑니다.
그더다가 어느 순간 풀리면 다시 오기 시작하구요.

근데 이것도 또 이상한게
어제 낮시간엔 이렇다가 밤이 되서 테스트해보니 걸림없이 계속 잘나갑니다. ㅠㅠ

서버는 저희 실서버와 공개테스트서버 두대로 같이 테스트 했습니다.
결과는 동일 합니다.
제가 오해 소지가 있는 글을 적었나봅니다.
말씀드리고자 했던 체크포인트는 글 작성자님쪽 네트워크 환경으로 인해 GCM쪽으로 향하는 통신 자체에 지연이 발생한것이 아닌가... 하는 것이였습니다.

저같은 경우 모금융사의 라우터가 단시간에 많은 통신이 몰리면서 메시지를 일부 발송하지 못하거나 지연되는 경우가 있었습니다.

원 답글에서 말씀드리고자 한 부분은 실제 gcm send 함수 호출 후 정상발송했다는 구글 서버의 응답을 받기까지의 시간을 체크해보셨는지 입니다.
예. 정상발송 응답이 거의 실시간입니다.
그래서 더 답답한 상황 입니다. ㅠㅠ

앱에서 푸시를 받으면 서버에 다시 리턴을 주도록 변경해서 업데이트 배포 했습니다.
아직은 업데이트한 사용자가 많지 않아 수신확인 리턴데이터가 많지 않으나
모니터링 해보니 발송 후 실제 사용자가 받기까지  길어야 1초이내 입니다.

아직은 정확히 푸시가 얼마나 누락되는지 또 얼마나 지연되는지 정확한 데이터가 없어
업데이트 버전이 더 배포되기까지 조금 기다려봐야 알 듯 합니다.
...