CSR:Client Side Rendering,客户端(通常是浏览器)渲染,前后端分离的场景中运用。
SSR:Server Side Rendering,服务端渲染;像之前的php、java,html代码都是通过后端动态生成的。
SSG:Static Site Generation,静态网站生成;就是整个网站的html页面及数据都是直接生成后的,比如之前的帝国cms系统,可以一键生成网站的所有静态页面。
还有另外两种技术是对ssg的补充:
ISR:Incremental Site Rendering,增量式的网站渲染,当网站很大的时候,批量全部更新对服务器消耗的资源很大,那么就可以采用一部分热点页面立即更新,非热点页面异步请求更新,最终达到全部更新的目的。
DPR:Distributed Persistent Rendering,分布式的持续渲染。
DPR 本质上讲,是对 ISR 的模型做了几处改动,并且搭配上 CDN 的能力:
1 . 去除了 fallback 行为,而是直接用 On-demand Builder(按需构建器)来响应未经过预渲染的页面,然后将结果缓存至 CDN;
2. 数据页面过期时,不再响应过期的缓存页面,而是 CDN 回源到 Builder 上,渲染出最新的数据;
3. 每次发布新版本时,自动清除 CDN 的缓存数据。
每种渲染方式都有利弊,看如何取舍
1、对于个人博客,需要搜索引擎收录的就采用ssr或ssg
2、对于系统后台,微商城等,不需要收录的,可以采用csr
3、对于大型新闻平台如搜狐、网易新浪等信息资讯平台,可以采用DPR
网友回复