Вопрос проверяет понимание статической генерации страниц, ее отличий от SSR и оптимальных сценариев использования в Next.js.
SSG — это процесс сборки HTML для страниц на этапе build time. Эти статические файлы затем обслуживаются CDN. Это самый быстрый метод, который идеально подходит для контента, который не меняется при каждом запросе, например, для блогов, документации и маркетинговых страниц.
Как работает SSG в Next.js:
Во время команды next build Next.js запускает React-компоненты для страниц, помеченных для SSG.
Результат рендеринга (HTML, JSON) сохраняется в виде статических файлов.
Эти файлы размещаются на CDN и мгновенно отдаются браузеру при запросе.
Ключевые преимущества:
Максимальная производительность:
Страницы загружаются мгновенно, так как отдаются готовые файлы без какой-либо серверной логики.
Дешевле и проще в хостинге:
Статические файлы можно хостить на любом CDN или сервере (Vercel, Netlify, S3), что часто бесплатно или очень дешево.
Высокая устойчивость к нагрузкам:
CDN с легкостью отдает тысячи запросов в секунду.
Лучшая безопасность:
Отсутствие серверной логики уменьшает поверхность для атак.
Когда использовать SSG (идеальные случаи):
Маркетинговые сайты (Landing Pages)
Блоги и документация (контент обновляется нечасто)
Каталоги продуктов (если данные обновляются раз в день)
Портфолио
Ревалидация (ISR - Incremental Static Regeneration):
Next.js позволяет обновлять статические страницы после сборки через определенные интервалы времени без необходимости пересобирать весь сайт.