页面渲染模型

渲染职责

服务端渲染


也叫后端渲染。服务器拿到数据,将数据和页面拼装,将模板(比如jsp)转化成完整的html页面返回

  • 首页加载快
    只需要加载单个页面,由于渲染完成,前端只进行展示

  • 占用服务端资源
    大量请求同一页面渲染费时,通常非实时页面可以缓存,定时更新

  • SEO
    页面信息完整,利于搜索引擎

  • 体验差
    交互后重新载入页面

客户端渲染


也叫前端渲染。前后端分离,前端负责模板(比如Vue模板)和数据转化html,后端只负责提供数据,前端通过ajax API和后端通信

  • 页面加载慢
    需要加载多个页面的资源

  • 节约带宽
    不用反复传输页面内容,只传业务数据

  • 占用客户端资源
    全页面渲染费时,通常会避免重绘,只渲染变化的部分

  • SEO
    页面部分内容需要js动态生成,搜索引擎不友好

  • 便于维护
    前后端独立维护,保证API一致即可

取舍


门户页面,注重SEO,没有复杂交互,采用服务端渲染
强交互页面,注重体验,采用客户端渲染
结合使用首页用服务端渲染,点进去具体功能后采用客户端渲染