它是如何工作的以及为什么它很酷
Posted: Thu Jan 30, 2025 8:15 am
当您部署启用 ISR 的站点时,您将部署一个(大部分)静态站点。您拥有已构建的预定义静态页面,并且应用程序上的路由在用户点击这些页面之前不会构建。
通常,当您有一个服务器端渲染 (SSR) 页面是这些未构建的页面之一时,您的用 马耳他电报号码数据库 户必须等待页面构建并一次性提供服务。但在 ISR 的情况下,如果您的用户点击该路由,他们会得到一个后备页面。后备页面是该页面上实际内容的占位符,您可以将骨架组件放在适当的位置,直到数据构建和加载完成。解析完该数据后,该页面将被缓存,添加到站点其余捆绑包中,并且您页面的下一个用户将看到构建的页面。如果需要更新数据,用户将看到该缓存版本而不是后备版本,并且站点可以设置重新验证时间线,以便当用户点击该页面时可以定期重新验证和更新数据。
增量静态再生将新页面添加到最新部署并单独缓存
该图中的每个新块都是在运行时构建并添加到“堆栈”中的新页面。
这种提供页面的方法使用的是stale-while-revalidate缓存策略。它的性能相当不错,因为您可以(几乎)获得纯静态页面的性能优势,同时还能像在 SSR 中一样拥有新的动态数据。这就是为什么这种策略通常被称为“混合”开发,因为它结合了两者的优点!
通常,当您有一个服务器端渲染 (SSR) 页面是这些未构建的页面之一时,您的用 马耳他电报号码数据库 户必须等待页面构建并一次性提供服务。但在 ISR 的情况下,如果您的用户点击该路由,他们会得到一个后备页面。后备页面是该页面上实际内容的占位符,您可以将骨架组件放在适当的位置,直到数据构建和加载完成。解析完该数据后,该页面将被缓存,添加到站点其余捆绑包中,并且您页面的下一个用户将看到构建的页面。如果需要更新数据,用户将看到该缓存版本而不是后备版本,并且站点可以设置重新验证时间线,以便当用户点击该页面时可以定期重新验证和更新数据。
增量静态再生将新页面添加到最新部署并单独缓存
该图中的每个新块都是在运行时构建并添加到“堆栈”中的新页面。
这种提供页面的方法使用的是stale-while-revalidate缓存策略。它的性能相当不错,因为您可以(几乎)获得纯静态页面的性能优势,同时还能像在 SSR 中一样拥有新的动态数据。这就是为什么这种策略通常被称为“混合”开发,因为它结合了两者的优点!