TTFB занимает так много времени (15-20 секунд) для простой страницы NextJS в производстве Firebase

# #firebase #google-cloud-firestore #next.js #production-environment

Вопрос:

У меня есть простая страница, на которой применяется SSR следующим образом:

 const page = ({initProps}) =gt; {  // render some static texts  // render images };  page.getInitialProps = async (ctx) =gt; {  // get id from ctx  // get data from Firestore (get by id, no aggregation)  const firebaseRes = await db.collection("organizations")  .doc(id)  .get();  // return data }  

В настоящее время в производственной среде для TTFB требуется около 15 секунд.

Я много чего перепробовал (используйте next/image, уменьшите объем возвращаемых данных getInitialProps …), чтобы сократить время задержки, но безуспешно.

Есть ли что-нибудь еще, что я могу проверить/улучшить для своего случая?

==========

Добавьте дополнительную информацию:

  1. Я запускаю свое приложение как функцию Firebase
  2. Моя страница-это целевая страница (статический текст, статические изображения, динамическая загрузка изображений, анимация одной Лотти).
  3. Я использую попутный ветер
  4. Моя следующая версия JS-12.x
  5. Внутри initialProp функции я подключаюсь непосредственно к Firestore, чтобы получить данные.
  6. Внутри initialProp функции, помимо запроса данных, у меня есть signInWithEmailAndPassword возможность получить токен.

введите описание изображения здесь

Комментарии:

1. Где вы выполняете этот код?

2. Пожалуйста, добавьте следующую информацию: Где он работает? Является ли это облачной функцией? Что еще загружается? Вы устранили ненужные зависимости? Выполняется ли приложение в скомпилированном виде?

3. Отредактировал свой пост, чтобы добавить больше информации

4. Вам следует изучить журналы ваших функций, чтобы понять, что в них занимает так много времени. Вы можете добавлять журналы консоли отладки и т.д…