App Engine - лимит очереди извлечения max_concurrent_requests?
Я использую очереди запросов Google App Engine для отправки массивных push-уведомлений в APNS, GCM и OneSignal, в основном, следующих этой архитектуры: https://cloudplatform.googleblog.com/2013/07/google-app-engine-takes-pain-out-of-sending-ios-push-notifications.html
Проблема в том, что я нахожусь в каком-то пределе относительно количества арендуемых задач одновременно: мои работники уведомлений арендуют 3 уведомления одновременно, но когда работает более 30 работников, leaseTasks()
возвращает пустой массив, даже если есть сотни или тысячи ожидающих выполнения задач. Насколько я знаю, нет ограничений на количество арендуемых задач одновременно, поэтому такое поведение является неожиданным.
1 ответ
Вы видели этот предел очередей в документах:
Если вы генерируете более 10 запросов LeaseTasks на одну очередь в секунду, только первые 10 запросов будут возвращать результаты. Остальные не вернут никаких результатов.
Если у вас есть 30 работников, кажется, что вы могли бы легко достичь этого предела. Не могли бы вы арендовать больше задач одновременно и использовать меньше работников?