当前位置: 首页 > news >正文

WHAT - SSR vs SSG vs ISR

文章目录

  • 1. SSR(Server-Side Rendering)服务器端渲染
    • 说明
    • 特点
    • 使用场景
  • 2. SSG(Static Site Generation)静态站点生成
    • 说明
    • 特点
    • 使用场景
  • 3. ISR(Incremental Static Regeneration)增量静态生成(Next.js 独有)
    • 说明
    • 特点:
    • 使用场景
  • 对比总结

在 WHAT - 前端同构 Isomorphic Javascript 中我们已经介绍过前端同构技术,其中提到了 SSR、SSV、ISR。今天我们主要来学习一下这三类技术场景。

这三个是现代前端中非常重要的渲染策略,尤其在像 Next.js 这样的同构框架中常见:

1. SSR(Server-Side Rendering)服务器端渲染

说明

每次用户请求页面时,服务器都会实时运行代码,生成 HTML,然后返回给浏览器。

特点

  • HTML 是实时生成的
  • 支持动态数据
  • 首屏加载快、SEO 好
  • 每次请求都会占用服务器资源

使用场景

  • 页面内容频繁变化,如:用户个性化页面、后台管理系统、动态文章详情页

2. SSG(Static Site Generation)静态站点生成

说明

在构建(build)时,系统提前把所有页面生成成静态 HTML 文件,部署时直接访问这些文件。

特点

  • 生成一次,访问多次,访问速度极快
  • 几乎不占用服务器资源
  • 内容不能实时更新,更新需要重新构建部署

使用场景

  • 内容稳定的页面,如:博客、文档、营销页、公司官网

3. ISR(Incremental Static Regeneration)增量静态生成(Next.js 独有)

说明

结合了 SSG 和 SSR 的优点,在构建后支持“按需更新”某些页面。某页面在后台静默再生成,不影响用户访问。

特点:

  • 初次构建使用 SSG,访问快
  • 后台静默更新,不阻塞用户
  • 页面可定时/按需更新

使用场景

  • 类似新闻、商品详情页等,大部分内容稳定,偶尔更新

对比总结

特性SSRSSGISR (Next.js)
构建时生成✅(首次)
每次请求✅ 实时生成❌(后台更新)
动态内容支持
性能中(视服务器性能)高(静态)高(静态 + 智能更新)
SEO

如果你在用 Next.js,可以通过以下方式选择:

// SSR
export async function getServerSideProps() {return { props: { data: ... } }
}// SSG
export async function getStaticProps() {return { props: { data: ... } }
}// ISR(在 SSG 中加 revalidate)
export async function getStaticProps() {return {props: { data: ... },revalidate: 60, // 每隔 60 秒后台更新一次}
}
http://www.dtcms.com/a/195425.html

相关文章:

  • 【数据机构】2. 线性表之“链表”
  • Linux系统编程——exec族函数
  • 如何在 Windows 10 或 11 上使用命令提示符安装 PHP
  • React学习———React Router
  • 【AI基础设施安全检测工具】AI Infra Guard安装使用详细说明
  • 数学实验(Matlab编程基础)
  • 第十天——贪心算法——深度总结
  • firewall防火墙
  • Seata源码—4.全局事务拦截与开启事务处理二
  • CSR、SSR与ISR的奇妙之旅
  • 2水平3因子设计
  • AGI大模型(18):各大平台RAG实现之智普RAG
  • math.js 加/减/乘/除 使用
  • labelimg安装及使用指南(yolo)
  • 红黑树实现
  • 从一场亲历事故聊聊数据库操作日志+数据恢复
  • AlphaEvolve:LLM驱动的算法进化革命与科学发现新范式
  • 线程池设计
  • 德劳内三角剖分原理
  • 前端快速环境搭建:nodejs及vue2安装
  • 2025程序设计天梯赛补题报告
  • 随笔:hhhhh
  • 液质联用仪(LC-MS)进样中断多种原因的排查和解决方法
  • ”一维前缀和“算法原理及模板
  • 多线程(四)
  • 终端和shell , 以及XShell 用ssh命令登陆主机的过程
  • 【Python】EAFP?请求原谅比请求允许容易?
  • 老物件-多功能扩音器拆解
  • vue 指令
  • 高效率者的特点