先後端協做--服務器渲染與先後端分離

先後端合做分爲兩種方式:1.服務器渲染  2.先後端分離html

1.服務器渲染(SSR)前端

   客戶端請求,服務端的servlet或controller接收請求,後端控制路由與渲染頁面,調用service,dao代碼完成業務邏輯,返回jsp,jsp展示頁面。小程序

 

tips: 後端

       servlet是在服務器上運行的小程序。這個詞是在 Java applet的環境中創造的,Java applet 是一種看成單獨文件跟網頁一塊兒發送的小程序,它一般用於在客戶端運行,結果獲得爲用戶進行運算或者根據用戶互做用定位圖形等服務。(來自百度百科)瀏覽器

       controller 就是MVC裏的控制器。服務器

       dao 是後端的數據訪問層。app

2.先後端分離前後端分離

  瀏覽器發送請求,直接到達html頁面,頁面負責調用服務器端口產生數據,填充html,在頁面上進行解析操做DOM異步

 

二者的區別:jsp

傳輸量:

    服務器渲染傳輸數據較多,並且不少重複數據。

    先後端分離傳輸數據量少

傳輸數據:

    服務器渲染返回的是HTML

    先後端分離返回的是JSON格式的數據

控制:

    服務器渲染由後端來決定大多數

    先後端分離 跳轉的頁面,由前端來決定

SEO:

    服務器渲染支持SEO

    先後端分離不支持SEO,由於首屏渲染出的html裏是空數據

用戶體驗:

   服務器渲染 返回的是包含數據和HTML的頁面,首屏加載快

   先後端分離 有渲染數據的過程,首屏渲染加載時間較長,單頁面應用(SPA),用戶體驗更好

對於開發者: 

   服務器渲染 後臺壓力較大,出現bug會存在踢皮球的現象,服務器端壓力較大。

   先後端分離 前端和後臺各司其職,出現bug快速定位誰的緣由,較少服務器端壓力,頁面出現大量數據前端能夠異步加載。提升開發效率。前端代碼,能夠複用,組件化。提高開發效率。

相關文章
相關標籤/搜索