0

Google 채널을 사용하여 서버에서 알림을 푸시합니다. 잘 작동하지만 디버거 창을 열면 많은 폴링 요청이 서버로 전송됩니다.푸시 알림으로 인해 서버에서 계속 폴링이 발생합니까?

푸시 알림이 작동하는 방식입니까? 그렇다면 사용법은 무엇입니까?

var token ="<%token%>";// This will creaete unique identifier(some id created by google api + ur key) 

    channel = new goog.appengine.Channel(token);  
     socket = channel.open();  

    socket.onopen = function() { 

    $('#messages').append('<p>Connected!</p>'); 

    }; 

감사합니다.

답변

0

GCM은 그렇게하지 않습니다. 그것의 흐름에 official docs 참조하십시오.

라이프 사이클 흐름

  • 보내기 및 다운 스트림 메시지가 나타납니다.
    • 메시지를 보내십시오. 앱 서버는 클라이언트 앱에 메시지를 전송합니다.
      1. 앱 서버가 GCM 연결 서버로 메시지를 전송합니다.
      2. GCM 연결 서버는 장치가 오프라인 인 경우 메시지를 대기열에 포함하고 저장합니다.
      3. 기기가 온라인 상태 일 때 GCM 연결 서버가 메시지를 기기로 전송합니다.
      4. 장치에서 클라이언트 응용 프로그램은 플랫폼 별 구현에 따라 메시지를받습니다. 자세한 내용은 플랫폼 별 설명서를 참조하십시오.
    • 메시지를 수신합니다. 클라이언트 앱이 GCM 연결 서버에서 메시지를받습니다. 또한 최근의 I/O 2016 년 발표

는 GCM의 후계자는 이제 푸시 알림 서비스를 가지고뿐만 아니라 Firebase Cloud Messaging이지만, 또한 무료 (한 예는 분석이다) 다른 기능을 가지고 있습니다.

전반적으로 GCM (또는 FCM)을 사용하는 것이 폴링보다 간단한 방법입니다. 보낸 메시지 및 다른 메시지의 대기열을 처리합니다. 내 대답 here


부. 또한 푸시 알림을 보낼 때 Polling이 이상적이지 않은 이유도 포함됩니다.