后端服务端 由java开发,现在要给每个用户个性化的推送一条通知(先向苹果服务器发送),数量峰值是三十万,请问用什么方法比较好?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
简单说下实现苹果通知推送服务(APNs)客户端的一些要注意的地方:
•使用长连接;
•sanbox服务器是没用的,调试时直接用“gateway.push.apple.com”域名;
•对于错误的Notification,苹果会回应一个Error response,里面有个identifier,在这个identifier之后的Notification全都失败;
因此发送者要缓存已经发送的Notification,最好设置Notification identifier为增长的整数序列,当收到Error response里,从缓存里取出比Error response的identifier要大的Notification,再次重新发送;
•对于一台设备,APNs服务器只存储一条Notification,所以如果设备不在线,连续发送多条消息的话,后面的会覆盖前面的;
•Apple的文档里有提到可以设置Notification的Priority = 5,具体是什么意思不太明白。实际测试是当屏幕关闭,在省电时才会接收到的。如果是屏幕亮着,是不会接收到消息的。而且这种消息是没有声音提示的。貌似意义不大。