SSR(server side rendering) 服务端渲染
- 早期的网页都是通过后端渲染来完成的:服务器端渲染(SSR,server side render):
- 客户端发出请求
- 服务端接收请求并返回相应HTML文档
- 页面刷新,客户端加载新的HTML文档.
优点:
- 更快的响应时间,不用等待所有的js加载完成,也能显示比较完整的页面
- 更好的SEO,可以将SEO的关键信息直接在后台渲染成html,保证了搜索引擎能爬取到关键数据
- 无需占用客户端资源,解析模板交给后端工作,对于客户端的资源占用更少
缺点
- 占用服务器资源,页面小小的改动,都需要请求一次完整的html页面
- 有悖于程序员的=="DRY(Don`t repeat yourself)"==原则
- 如果短时间访问过多的话,对服务器造成一定的访问压力
- 一些常见的api需要先对运行环境判断再使用
网页渲染的过程
前后端分离
优点:
- 前端专注于ui界面的开发,后端专注于api的开发
- 体验更好
缺点:
- 第一次响应内容较慢,不如服务端渲染快,会出现空白延迟:HTML下载时间 + JS下载/执行时间 + 请求时间 + 渲染时间;在这个时间内,会出现页面空白效果
- 不利于SEO优化,由于页面初始状态为空,因此爬虫无法获取页面中任何有效数据,对于SEO较差