Экземпляры Cloud Run завершаются с ошибкой OOM (HTTP 500) во время пиковых нагрузок, совпадающих с увеличением количества запросов Firestore для просмотра товаров. Как предотвратить сбои и снизить нагрузку на Firestore, одновременно оптимизируя производительность?
Выберите ответ
Нажмите на вариант, чтобы проверить свой ответ.
Правильный ответ: Разбить запрос product-list на страницы, используя курсоры с ограничениями..
Почему это правильный ответ
Разбиение запроса на страницы с использованием курсоров (например, startAfter() или endBefore()) и ограничений (limit()) является наиболее эффективным решением. Это позволяет загружать только необходимую часть данных, значительно снижая объем памяти, потребляемой экземплярами Cloud Run, и уменьшая нагрузку на Firestore. При пиковых нагрузках это предотвращает ошибки OOM и улучшает производительность. Создание пользовательского индекса Firestore улучшит скорость запросов, но не уменьшит объем данных, загружаемых в память Cloud Run, что не решит проблему OOM. Разбиение на страницы с использованием целочисленных смещений неэффективно для Firestore и может привести к пропуску или дублированию документов, а также к увеличению затрат при больших смещениях. Увеличение объема памяти Cloud Run может временно отсрочить проблему, но не устранит ее коренную причину и приведет к увеличению затрат.
Сдайте экзамен — без бесконечного поиска ответов
Получите все проверенные вопросы и объяснения для этого экзамена в одном месте и сэкономьте часы подготовки. 1000+ сертификаций · 20+ языков · начните бесплатно.
Сдайте экзамен быстрее → Карта не требуется