除了SSR、CSR、还有ISR、SSG?🚀🚀🚀五分钟搞懂它们的区别

文章同步在公众号:萌萌哒草头将军,欢迎关注

在现代 Web 开发领域,经常会出现几个缩写词:SSR、CSR、ISR 和 SSG。这些术语对于理解 Web 应用程序的构建和交付方式至关重要。在本文中,我们将深入探讨这些缩写词的含义以及它们如何影响 Web 开发。

1.SSR(服务器端渲染)

服务器端渲染(SSR)是一种在服务器上渲染网页,然后将完全渲染的 HTML 页面发送到客户端浏览器的技术。它的工作原理如下:

当用户请求网页时,服务器会获取数据、生成 HTML,并将完整的页面发送到浏览器。

然后浏览器立即显示页面,同时下载并执行 JavaScript 和 CSS 文件。

SSR 以其 SEO 优势而闻名,因为搜索引擎可以轻松抓取 HTML 内容并为其建立索引。

2.CSR(客户端渲染)

客户端渲染(CSR)是一种将网页最初作为空 HTML shell 传递给浏览器的技术。然后,客户端 JavaScript 动态获取数据并在浏览器中呈现页面。企业社会责任的运作方式如下:

当用户请求页面时,服务器会发送最小的 HTML 结构以及 JavaScript 和 CSS 文件。

浏览器加载这些文件并执行 JavaScript,从而获取数据并生成内容。

CSR 提供​​了更具交互性的用户体验,但可能会导致初始页面加载速度变慢和 SEO 挑战。

3.ISR(增量静态再生)

增量静态再生(ISR)是一种结合了 SSR 和 SSG 优点的混合方法。它允许在构建时和运行时部分重新生成静态页面。ISR 的工作原理如下:

在构建过程中,某些页面被预呈现为静态 HTML,而其他页面则被标记为"过时"。

当用户请求"过时"页面时,服务器会即时重新生成该页面并缓存结果以供后续请求使用。

ISR在性能和实时数据之间取得了平衡,使其适合动态但经常访问的页面。

4.SSG(静态站点生成)

静态站点生成(SSG)是一种在构建时生成网页并用作纯 HTML 文件的技术。SSG 是最直接的方法:

在构建过程中,所有页面都预渲染为静态 HTML 文件,包括构建时已知的任何数据。

当用户请求页面时,服务器仅提供预先构建的 HTML 文件。

SSG 提供出色的性能、可扩展性和安全性,但可能不适合高度动态的内容。

何时使用每种方法

  • SSR:当 SEO 至关重要并且需要尽快向用户交付内容时,请使用 SSR。它非常适合内容驱动的网站和电子商务平台。
  • CSR:当您需要高度交互和动态的 Web 应用程序时,请考虑 CSR。它非常适合单页应用程序 (SPA) 和严重依赖用户交互的 Web 应用程序。
  • ISR:当您需要性能和实时数据更新之间的平衡时,选择 ISR。它适用于产品可用性不断变化的博客、新闻网站和电子商务网站。
  • SSG:当您的内容不经常更改且性能优先时,请选择 SSG。它非常适合博客、文档网站和营销页面。

结论

了解 SSR、CSR、ISR 和 SSG 对于在 Web 开发中做出明智的决策至关重要。每种方法都有其优点和缺点,选择取决于项目的具体要求。通过有效地利用这些技术,您可以创建提供最佳用户体验和性能的 Web 应用程序。

原文链接:

dev.to/dj1samsoe/u...

相关推荐
Martin -Tang1 小时前
Vue 3 中,ref 和 reactive的区别
前端·javascript·vue.js
FakeOccupational3 小时前
nodejs 020: React语法规则 props和state
前端·javascript·react.js
小牛itbull3 小时前
ReactPress:构建高效、灵活、可扩展的开源发布平台
react.js·开源·reactpress
放逐者-保持本心,方可放逐3 小时前
react 组件应用
开发语言·前端·javascript·react.js·前端框架
曹天骄4 小时前
next中服务端组件共享接口数据
前端·javascript·react.js
郝晨妤5 小时前
鸿蒙ArkTS和TS有什么区别?
前端·javascript·typescript·鸿蒙
AvatarGiser6 小时前
《ElementPlus 与 ElementUI 差异集合》Icon 图标 More 差异说明
前端·vue.js·elementui
喝旺仔la6 小时前
vue的样式知识点
前端·javascript·vue.js
别忘了微笑_cuicui6 小时前
elementUI中2个日期组件实现开始时间、结束时间(禁用日期面板、控制开始时间不能超过结束时间的时分秒)实现方案
前端·javascript·elementui
尝尝你的优乐美6 小时前
vue3.0中h函数的简单使用
前端·javascript·vue.js