Java, UX, HTML, CSS, WEB-design

ISR против DPR: громкие слова, краткое объяснение

Краткое описание по статье ISR против DPR: громкие слова, краткое объяснение

Название: ISR против DPR: громкие слова, краткое объяснение . Краткое описание: ⭐ Кэссиди Уи . Дата публикации: 15.01.2022 . Автор: Алишер Валеев .

Для чего создан сайт Novosti-Nedeli.ru

Данный сайт посвящен новостям мира и мира технологий . Также тут вы найдете руководства по различным девайсам.

Сколько лет сайту?

Возраст составляет 3 года


  • Кэссиди Уильямс

  • 0 Комментарии

ISR против DPR: громкие слова, краткое объяснение

  • 4 минуты чтения

  • Next.js, Инструменты, Фреймворки

Краткое резюме ↬

Есть две стратегии постепенного создания веб-сайтов, которые становятся все более популярными: инкрементная статическая регенерация и распределенная постоянная визуализация. Какая разница? Давайте разберемся.

Если вы балуетесь миром Jamstack/рендеринга страниц/Next.js, скорее всего, вы слышали о терминах «добавочная статическая регенерация» (ISR) и «распределенный постоянный рендеринг» (DPR). А если нет, вы можете сказать: «Вау, это длинные слова, которые я никогда не пойму». Вот где ты не прав! Вы собираетесь понять их в настоящее время.

Что это за вещи?

Эти термины являются стратегиями постепенное создание веб-сайтов. Обычно, когда вы развертываете веб-сайт, который не обрабатывается ни на стороне сервера, ни на стороне клиента, его необходимо скомпилировать и создать, чтобы браузер мог загрузить его изначально (так, например, ваш JSX транспилируется в ванильный JavaScript, ваш SCSS скомпилированный в ванильный CSS, ваши шаблоны в HTML).

По мере того, как ваши веб-сайты становятся большими, вы можете начать сталкиваться с необходимостью иметь довольно длительное время сборки, потому что это много Скомпилировать. Как правило, на ваших веб-сайтах могут быть страницы двух категорий:

  • Наберите «А

    «Важные» страницы (главная страница, о нас, контакты)

  • Тип Б

    «Отложенные» страницы, которые могут открываться не так часто, как страницы типа А (каталог продуктов, определенные страницы документации).

Если бы вы создавали этот веб-сайт поэтапно, вы теоретически могли бы разбить свою сборку, где ваши страницы типа A создаются заранее, а страницы типа B создаются позже!

И ISR, и DPR используют этот подход, но делают это немного по-разному.

В чем разница между ISR и DPR?

Для обоих подходов страницы типа A создаются сразу при развертывании. Со страницами типа B они различаются немного больше. Ключевым отличием этих двух подходов является неизменность. Когда я говорю неизменность, я имею в виду, что когда страница добавляется в сборку, она не меняется, и каждый пользователь, нажимающий URL-адрес во время этого развертывания, всегда будет видеть одни и те же данные.

С ISR ваши страницы типа B построен во время выполнения когда пользователь переходит на страницу. Каждая из этих страниц имеет «время истечения срока действия» (или «время повторной проверки»), когда она будет перестраиваться на основе нового контента, который появляется в это время (выгружается в фоновом режиме). Он основан на стратегии кэширования, называемой «устаревшей при повторной проверке», что означает, что страница может быть «устаревшей» со старой информацией до тех пор, пока она не будет сгенерирована повторно и кэш не будет обновлен. Этот подход не гарантирует неизменности между сборками. Когда я говорю это, я имею в виду, что вы не обязательно можете вернуться к предыдущему развертыванию с полной уверенностью в том, что весь контент будет таким, каким он был в то время, когда вы изначально запускали эту страницу (это объясняется в другом сообщении в блоге от Ли Робинсон из команды Next.js).

Есть плюсы и минусы к этому; главный плюс означает, что вы можете регулярно обновлять данные, которые заполняют страницу, без перестройки сайта, а главный минус заключается в том, что отладка будет очень сложной без этой неизменной части (поскольку некоторые пользователи могут видеть устаревшую страницу, а другие могут видеть правильно обновленный).

С DPR ваши страницы типа B также создаются во время выполнения, когда пользователь переходит на страницу. Когда несформированные страницы запрашиваются в первый раз, они создаются и кэшируются на границе, поэтому их не нужно создавать снова. Как только он станет частью сборки, он не изменится до повторного развертывания. В этом подходе также есть плюсы и минусы. Главный плюс в том, что это гарантирует неизменность. Когда вы переходите по URL-адресу, каждый пользователь всегда будет видеть одну и ту же точную информацию. Минус в том, что если вы хотите обновить одну из этих страниц, вам нужно запустить перестройку сайта.

Как я могу использовать эти подходы и сравнивать для себя?

В идеальном мире эти подходы встроены в используемые вами фреймворки, и вам не нужно много делать, чтобы их использовать. Однако прямо сейчас вы можете протестируйте его с помощью Next.js! ISR по умолчанию встроен в Next.js, когда вы развертываете его на платформе, управляемой Node.js, такой как Vercel, а DPR встроен при развертывании в Netlify.

Вы можете использовать DPR и в других фреймворках (у Зака ​​Лезермана есть несколько демонстраций с Eleventy, где он откладывает создание сотен страниц), и команда Next.js сказала, что ISR появится и в других фреймворках в будущем (например, Nuxt и SvelteKit). Вы также можете оставить комментарий о том, как реализован DPR (для любой платформы Jamstack!) в этом RFC.

Еще после прыжка! Продолжить чтение ниже ↓
Сокрушительная редакция
(вф, иль)




Source: https://smashingmagazine.com

Заключение

Вы ознакомились с статьей — ISR против DPR: громкие слова, краткое объяснение

Пожалуйста оцените статью, и напишите комментарий.

Похожие статьи

Добавить комментарий

Ваш адрес email не будет опубликован.

Кнопка «Наверх»