SSR(Server Side Rendering 服务端渲染)

1,703 阅读1分钟

渲染: 将数据和模板组装成html

客户端渲染(CSR)

html 仅仅作为静态文件,客户端在请求时,服务端不做任何处理,直接以原文件的形式返回给客户端客户端,然后根据 html 上的 JavaScript,生成 DOM 插入 html。

  • 网络传输数据量小、前后端分离、局部刷新,无需每次请求完整页面、交互好可实现各种效果
  • 可以将静态资源部署到cdn上、实现高并发、减少了服务器压力
  • 不利于SEO、爬虫看不到完整的程序源码、首屏渲染慢(渲染前需要下载一堆js和css等)

服务端渲染(SSR)

当用户第一次请求页面时,由服务器把需要的组件或页面渲染成 HTML 字符串,然后把它返回给客户端,页面上呈现的内容,在 html 源文件里也能找到。

  • 首屏渲染快、利于SEO、可以生成缓存片段,生成静态化文件
  • 用户体验较差、不易维护,通常前端改了部分html或者css,后端也需要修改。
  • 相比于加载单页应用,只需要加载当前页面的内容,而不需要像 React 或者 Vue 一样加载全部的 js 文件