Срок службы соединения службы push-уведомлений Apple
Я работаю над реализацией поставщика удаленных push-уведомлений для устройств IOS. Я также прочитал следующее в руководстве по передовым методам на веб-сайте Apple для разработчиков
Держите ваши соединения с APN открытыми через несколько уведомлений; не повторно открывать и закрывать соединения. APN рассматривает быстрое подключение и отключение как атаку отказа в обслуживании. Вы должны оставить соединение открытым, если вы не знаете, что оно будет простаивать в течение длительного периода времени - например, если вы отправляете уведомления своим пользователям только один раз в день, можно использовать новое соединение каждый день.
После реализации логики для установления соединения я решил проверить его и на некоторое время оставил мой сервер включенным. Вернувшись с ужина, я увидел, что мой сервер был отключен службой Apple push-уведомлений. Во время работы моего сервера он был подключен к службе push-уведомлений Apple, но бездействовал. Я прочитал еще один вопрос, что служба ненадежна и периодически отключает вас. Мне было интересно, есть ли у кого-нибудь представление о том, сколько времени должно быть соединение бездействующим, чтобы отключить вас от службы, и может ли кто-нибудь предложить некоторые лучшие методы для решения этой проблемы.
Моя главная проблема заключается в том, что Apple примет быстрое подключение и отключение в качестве атаки DDOS. Поэтому я намеревался держать соединение открытым как можно дольше и просто заново подключиться к услуге, когда я отсоединюсь от нее. Это обычная практика для работы с APNS?
[ОБНОВЛЕНИЕ 4/5/2016] Я реализовал логику переподключения, но теперь, похоже, столкнулся с проблемой, которую я не понимаю в службе. По словам Apple, они хотят, чтобы мы оставляли соединение с APN открытым для нескольких уведомлений. Однако после отправки первого уведомления по соединению и его отображения на моем устройстве дальнейшие уведомления, отправленные через соединение, по-видимому, не проходят. Могу ли я отправить только один запрос на поток? Должен ли я постепенно открывать потоки при отправке большего количества запросов?