안드로이드 개발 질문/답변
(글 수 45,052)
현재 C2DM을 이용한 푸쉬를 구현한 상태입니다.
이 푸쉬가 좀 많이 나간다는게 문제인데요.
거의 1분에 4~5개씩 나가게 됩니다. << 1분에 하나의 디바이스가 4~5개의 푸시를 받는다는 뜻입니다.
하나하나의 메세지는 알림바에 각각 따로 출력해주고 있습니다.
문제는 디바이스에서 10~20개까지는 잘 받아지다가 그 이후부터는 거의 받아지지를 않는 상태가 되네요.
어떤 버퍼나 메모리의 영향을 받는게 아닌가 싶은 생각은 드는데 이 부분에 대해서 자세히 아시는 분 계시면 조언좀 부탁드립니다.
아니면 이렇게 많은 푸쉬를 발생하는 앱을 제작해보신분이 계시면 어떤 방법으로 처리를 하셨는지 조언좀 부탁드리겠습니다.
2012.07.18 17:03:36
제가 만들고자 하는것은 하루 단위로 따지면 발생하는 메세지가 20~30만건 정도 될것으로 예상하고 있습니다.
사용자들의 요구를 충족하기가 어렵다는것은 알지만 최대한 많은 정보를 날려야 하는 상황이라 이리저리 방법을 찾고 있는 중이네요.
쉽지 않네요
2012.07.20 19:58:00
c2dm은 quota 제한이 있습니다. c2dm은 베타 성격의 서비스로 2012.6.26에 신규 서비스의 지원이 중지 되었어요 더이상 quota 증설이나 신규 가입자의 신청을 받고 있지 않다고 합니다.(기존가입자의 경우 quota 증설만 안되고 서비스는 이용가능합니다) 다음버전인 gcm으로 정식 서비스가 되면서 gcm서비스의 이용을 권장하고 있습니다.
gcm을 사용하려면 개발자 등록 (25달러)의 비용을 지불해야 하고 gcm은 quota의 제한이 없다고 합니다.
[출처] [버섯] GCM 관련 기초 정리|작성자 버섯돌이




푸시를 메시지 발생 시 마다 매 번 발송하지 말고.. 주기적으로 몇 건의 새로운 메시지가 있다는 정보만 전송하고,
앱에서는 그 메시지를 받은 후 서버에 접속하여 최신 메시지를 받아오는 방법으로 처리하는 건 어떤가요?
전 하루에 보통 6천에서 1만건 정도의 메시지가 생성되는 서비스를 만들었는데요..
10초 주기로 사용자별로 새 메시지가 몇 건 있는지 정도의 정보만 C2DM으로 발송하도록 처리했습니다.
그 메시지 받은 앱은 서버로 접속하여 실제 메시지를 받아오구요..