Next.js 15 App Router — у кого реально ускорился TTFB в проде?

Рейтинг: 51% · 4 голосов
Frontend и backend разработка: JavaScript, TypeScript, React, Next.js, Vue, Node.js, PHP, REST и GraphQL API, вёрстка HTML/CSS и современные веб-приложения.
Ответить
Аватара пользователя
heckman
Сообщения: 62
Зарегистрирован: 12 май 2026, 19:39

Next.js 15 App Router — у кого реально ускорился TTFB в проде?

Сообщение heckman »

Мигрировали крупный e-commerce (около 400 роутов) с Pages Router на App Router в Next.js 15.2. По синтетике Lighthouse всё отлично, но на реальных пользователях по данным RUM TTFB вырос примерно на 80–120 мс на страницах с тяжёлой выборкой из БД. Такое ощущение, что RSC-стриминг где-то буферизуется сильнее чем в Pages + getServerSideProps. Кто проходил похожее — что смотрели в первую очередь? Ставили ли Cache-Control на уровне Route Handler или что-то с Suspense boundaries?
👍 ❤️1 🔥3 😄 🤔
✔ Лучший ответ сформирован автоматически — juniorphoenix
У нас похожая история на медиа-проекте. Оказалось что дело было в unstable_cache — он при первом хите после revalidate блокирует рендер до завершения fetcher-функции. Перешли на явный Redis через ioredis с ручным TTL, TTFB дропнул с 350 до 190 мс. Ещё помогло вынести тяжёлые секции в отдельные Suspense boundaries с loading.tsx — пользователь видит шелл быстро, данные догружаются.
Перейти к ответу →
Аватара пользователя
juniorphoenix
Сообщения: 21
Зарегистрирован: 14 май 2026, 18:58

Re: Next.js 15 App Router — у кого реально ускорился TTFB в проде?

Сообщение juniorphoenix »

✔ Лучший ответ — сформирован автоматически
У нас похожая история на медиа-проекте. Оказалось что дело было в unstable_cache — он при первом хите после revalidate блокирует рендер до завершения fetcher-функции. Перешли на явный Redis через ioredis с ручным TTL, TTFB дропнул с 350 до 190 мс. Ещё помогло вынести тяжёлые секции в отдельные Suspense boundaries с loading.tsx — пользователь видит шелл быстро, данные догружаются.
👍 ❤️1 🔥1 😄 🤔
Аватара пользователя
togashi
Сообщения: 50
Зарегистрирован: 10 май 2026, 23:57

Re: Next.js 15 App Router — у кого реально ускорился TTFB в проде?

Сообщение togashi »

@juniorphoenix, Проверьте instrumentation.ts и есть ли у вас opentelemetry-sdk подключённый — он иногда добавляет оверхед на каждый запрос из-за span propagation. Мы убрали его из edge runtime и получили -40 мс только на этом.
👍1 ❤️2 🔥 😄1 🤔
Аватара пользователя
genesi
Сообщения: 7
Зарегистрирован: 11 май 2026, 06:53

Re: Next.js 15 App Router — у кого реально ускорился TTFB в проде?

Сообщение genesi »

Самое частое что вижу у людей — забывают что fetch в RSC по умолчанию кешируется, но если внутри компонента вызывается несколько раз с одним URL — каждый вызов это отдельный entry в cache. Мемоизация через React cache() решает. В доке это написано, но теряется в объёме.
👍 ❤️1 🔥 😄 🤔1
Аватара пользователя
hogan20
Сообщения: 71
Зарегистрирован: 13 май 2026, 12:49

Re: Next.js 15 App Router — у кого реально ускорился TTFB в проде?

Сообщение hogan20 »

Мы вообще откатились на Pages Router для критичных по перформансу страниц листинга. App Router оставили для CMS-части, дашбордов, статических маркетинг-страниц — там он хорош. Такой гибридный подход пока держим, Next.js официально поддерживает сосуществование.
👍2 ❤️ 🔥 😄 🤔
Аватара пользователя
torchchan
Сообщения: 14
Зарегистрирован: 15 май 2026, 03:16

Re: Next.js 15 App Router — у кого реально ускорился TTFB в проде?

Сообщение torchchan »

А вы смотрели на Partial Prerendering (PPR)? В 15.x он вышел из experimental в canary и обещает именно этот кейс — статический шелл отдаётся из CDN мгновенно, динамические секции стримятся. На синтетике у нас 50-й перцентиль TTFB упал до 60 мс. Но до прода не катили ещё, страшновато.
👍 ❤️ 🔥 😄 🤔
Ответить
Поделиться темой: ✈ Telegram VK

Вернуться в «Веб-разработка»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость