我创建了一个为IOS手机发送推送通知的应用程序,该应用程序一次成功向1个用户发送推送。 当一次向大约100k用户发送推送时会出现问题(当然,手机会发生很大的延迟,因为我正在循环设备令牌以便逐个发送推送。)
因此,由于这种延迟,我不想循环我的DataTable。我需要立即将所有通知发送到所有设备令牌,以便设备同时获得推送通知而不会有任何延迟。
有什么办法吗? 注意:我正在使用C#。如果另一种语言可以实现并解决这个问题,请提供建议。
答案 0 :(得分:2)
您无法控制设备何时获得推送通知。即使您设法立即向APNS服务器提交100k推送通知,它们实际传送到设备的速度也取决于APNS服务器。
如果您询问如何立即向APNS服务器提交100k推送通知,您可以通过打开APNS服务器的多个套接字并以多个线程发送通知来提高速度。即使您逐个发送通知,假设您使用相同的连接而不是一直关闭和打开套接字,默认情况下它们会在TCP级别进行批处理,因此它们会批量到达APNS服务器。
答案 1 :(得分:0)
您可以查看PushSharp库。它将管理开放和为你关闭多个插座。它还实施了反馈,因此您将知道是否有任何推送失败。