Эти неудавшиеся запросы, скорее всего, имеют тайм-аут в очереди ожидающих запросов , что означает, что для их обслуживания нет доступных экземпляров.Это обычно происходит во время всплесков сообщений PubSub, которые доставляются в пакетном режиме, и App Engine не может масштабироваться достаточно быстро, чтобы справиться с ними.
Один из способов уменьшить это - переключить параметр масштабирования на автоматическое масштабирование в вашем файле app.yaml.Вы можете настроить min_pending_latency
и max_pending_latency
, чтобы лучше соответствовать вашему сценарию.Вы также можете указать min_idle_instances
для получения неактивных экземпляров, которые были бы готовы обрабатывать дополнительную нагрузку (обязательно включите и обработайте запросы прогрева )
Примите во внимание, что PubSub будет автоматическиПовторите попытку доставить ошибочные сообщения.Он будет регулировать скорость доставки в соответствии с поведением вашей системы, как описано здесь .Таким образом, вы можете столкнуться с некоторыми ошибками во время всплесков сообщений, когда создаются новые экземпляры, но ваши сообщения будут в конечном итоге обрабатываться (если вы настроили max_instances
достаточно высоко, чтобы справиться с нагрузкой).