我有一个.Net Windows服务,通过https://android.googleapis.com/gcm/send发送GCM推送通知。
该服务定期以10 /秒的速率发送大约10,000封邮件。对于每个批次,5-10个消息将导致“502 Bad Gateway”响应。产生502的消息总是经过第二次尝试。
这是正常的吗?我可以过快地发送太多邮件吗?
答案 0 :(得分:8)
根据GCM guide,所有5xx错误代码都应被视为临时错误,并且应重试获取这些错误的请求:
5xx 500-599范围内的错误(例如500或503)表示尝试处理请求时GCM服务器中存在内部错误,或者服务器暂时不可用(例如,由于超时)。发件人必须稍后重试,以兑现响应中包含的任何Retry-After标头。应用程序服务器必须实现指数退避。
我不认为一秒钟的10条消息太快了。只要您的代码处理此错误并重试,我认为不应该有任何问题。