前后端协作--服务器渲染与前后端分离

前后端合作分为两种方式:1.服务器渲染  2.前后端分离

1.服务器渲染(SSR)

   客户端请求,服务端的servlet或controller接收请求,后端控制路由与渲染页面,调用service,dao代码完成业务逻辑,返回jsp,jsp展现页面。

tips: 

       servlet是在服务器上运行的小程序。这个词是在 Java applet的环境中创造的,Java applet 是一种当作单独文件跟网页一起发送的小程序,它通常用于在客户端运行,结果得到为用户进行运算或者根据用户互作用定位图形等服务。(来自百度百科)

       controller 就是MVC里的控制器。

       dao 是后端的数据访问层。

2.前后端分离

  浏览器发送请求,直接到达html页面,页面负责调用服务器端口产生数据,填充html,在页面上进行解析操作DOM

两者的区别:

传输量:

    服务器渲染传输数据较多,而且很多重复数据。

    前后端分离传输数据量少

传输数据:

    服务器渲染返回的是HTML

    前后端分离返回的是JSON格式的数据

控制:

    服务器渲染由后端来决定大多数

    前后端分离 跳转的页面,由前端来决定

SEO:

    服务器渲染支持SEO

    前后端分离不支持SEO,因为首屏渲染出的html里是空数据

用户体验:

   服务器渲染 返回的是包含数据和HTML的页面,首屏加载快

   前后端分离 有渲染数据的过程,首屏渲染加载时间较长,单页面应用(SPA),用户体验更好

对于开发者: 

   服务器渲染 后台压力较大,出现bug会存在踢皮球的现象,服务器端压力较大。

   前后端分离 前端和后台各司其职,出现bug快速定位谁的原因,较少服务器端压力,页面出现大量数据前端可以异步加载。提高开发效率。前端代码,可以复用,组件化。提升开发效率。

猜你喜欢

转载自www.cnblogs.com/JiAyInNnNn/p/10959179.html
今日推荐