EasyAPNS: Кто-нибудь пробовал это с большим количеством уведомлений? - PullRequest
1 голос
/ 11 апреля 2011

Я реализовал EasyAPNS в своем приложении и на сервере, и в настоящее время у меня есть база данных с 2000+ зарегистрированными устройствами.

Сегодня я попытался отправить уведомления на все эти устройства, и время ожидания скрипта истекло. Я проверил код (я должен был сделать это раньше, я знаю) и обнаружил, что он открывает соединение для каждого сообщения .

По сути, эта штука никогда не сработает и забанит мой IP, верно? Как вообще возможно, что эта проблема не упоминается нигде в группе Google ? Видимо никто не пробовал эту библиотеку с большим количеством уведомлений - может ли это быть реальным? Или я что-то упустил?

Ответы [ 2 ]

5 голосов
/ 24 апреля 2011

Я закончил тем, что переписал много кода, который отправляет сообщения в APNS.По сути, вместо того, чтобы циклически проходить каждое сообщение, открывающее и закрывающее соединение каждый раз, просто извлекайте N сообщений (возможно, ограничение составляет 100) из базы данных каждую минуту и ​​отправляйте их одним выстрелом.Делайте это, пока таблица сообщений не станет пустой (для этого я использовал задание cron).Мне также пришлось проделать дополнительную работу, потому что мне требовалась поддержка нескольких приложений.

Я не уверен, что думали ребята из EasyAPNS, когда писали эту библиотеку.Честно говоря, это совсем не помогло - было бы лучше, если бы я написал код APNS самостоятельно.Если кому-то понадобится помощь в модификации библиотеки, просто прокомментируйте этот пост.

0 голосов
/ 07 июня 2012

APNS блокирует ваш IP. Я согласен с pt2ph8.

Один быстрый вопрос к pt2ph8. Можно ли создать библиотеку, которая будет обрабатывать APNS для нескольких приложений?

...