前後端分離的好處

2021-09-20 01:20:57 字數 1686 閱讀 5035

前後端的分離也實現了前後端架構的分離,帶來的好處有:

*整個專案的開發權重往前移,實現真正的前後端解耦,動態資源和靜態資源分離,提高了效能和擴充套件性

*前端靜態化

*前端有且僅有靜態內容,再明確些,只有html/css/js

*其內容來自於完全靜態的資源而不需要任何後台技術進行動態化組裝。

*前端內容的執行環境和引擎完全基於瀏覽器本身。

*後端資料化

*後端可以用任何語言,技術和平台實現。

*遵循乙個原則:只提供資料,不提供任何和介面表現有關的內容。

*統一api介面,介面完全可以共用。

*通過一些**重構,就可以大量復用介面,提公升效率

*平台無關化

*前端三大技術(html/css/js)本身就是平台無關的。

*後台鏈結部分的本質是實現合適的restful介面和互動json資料,就這兩者而言,任何技術和平台都可以實現。

*前後端交給不同的人來編寫,明確劃分職責,發現bug的時候可以快速定位。

*vue.js等框架編寫前端的時候,會比之前寫jquery更簡單快捷。

*架構分離化

*前端架構完全基於html/css/js的發展和js框架的演變,由於前台是純靜態內容,大型架構方面可以考慮向cdn方向發展。

*後端架構幾乎可以基於任何語言和平台的任何解決方案,大型架構方面,restful api可以考慮負載均衡,而資料,業務實現等可以考慮資料庫優化和分布式。

*在大併發情況下,可以同時水平擴充套件前後端伺服器。

*即使後端伺服器暫時超時或者宕機,前端頁面也會正常訪問,只是資料重新整理不出來而已,當然現在一般是伺服器集群,少有出現這種現象。

*前後端流量大幅減少

*減少後端伺服器的兵法壓力,除了介面以外的其他所有http請求全部轉移到前端伺服器上

*頁面不再是全部重新整理,而是非同步載入,區域性重新整理,減輕壓力。

*表現效能的提高

*頁面效能,第一次獲取的確會有所損失

*後續使用這個頁面,效能優勢就完全體現了,頁面的絕大部分內容都是本地快取直接載入,遠端獲取的僅僅是1-2個10k的內容,其載入時間百毫秒內,這和本地頁面幾無區別,其前端載入和相應速度得到非常大的提高。

*安全性方面的集中優化

*前端靜態以後,一些注入式攻擊在分離模式下被很好的規避。

*而後端安全問題集中化了,主要考慮處理restful介面安全

*安全架設和集中優化變得更明確和便利

實現的一些表現

*前後端人員雙方約定好介面的數格式

*比如:前端需要呼叫乙個使用者資訊的介面,資料格式為.name,後端人員只需要告訴他乙個介面url(如並且將這個介面返回前端想要的資料即可,至於後端人員怎麼實現這個介面,前端人員並不關心!

*前端頁面用ajax解析url,獲取資料進行頁面端的處理,然後再按照上述位址返回給後端。

*前端人員要用這個介面來做什麼,後端人員同樣不需要關心,雙方都只專注於自己需要實現的業務邏輯。

restful風格的api

restful風格的api是前後端分離的最佳實踐

*restful推薦每個url能操作具體的資源

*能準確描述伺服器對資源的處理動作。

*通常伺服器對資源支援get/post/put/delete等,用來實現資源的增刪改查。

*前後端分離的話,這些api-url是對接的橋梁,採用restful介面位址,含義更清晰,見名知意。

參考: 

前後端分離的好處 談談我們為什麼要前後端分離

隨著不同終端的興起,對開發人員的要求越來越高,純瀏覽器端的響應式已經不能滿足使用者體驗的高要求,我們往往需要針對不同的終端開發定製的版本,為了提公升開發效率,前後端分離的需求越來越被重視,前端主要負責頁面的展現和互動邏輯,後端主要負責業務和資料介面,同乙份資料介面,我們可以定製開發多個版本。前後端不...

前後端分離

關於前後端分離的一些好的文章推薦 前端框架 為什麼前後端分離 最直白的理解,我認為是因為在開發過程中,前端總是需要等待後端的環境搭建好之後,前端才能獲取相關資料,對於前端的開發影響很大,事實上前端並不關心後端的開發,那麼有沒有方法不讓後端影響前端的開發呢?其實後端提供的是什麼?乙個執行伺服器,乙個就...

前後端分離

在此說明 前後端分離有利於後端的快速開發,但並不利於搜尋引擎優化 seo 上圖能清晰的看到,使用前後端分離模式進行開發,瀏覽器會向伺服器傳送請求,伺服器會向瀏覽器傳送乙個類似框架的html,是固定的空殼,此時瀏覽器再使用ajax請求向後端伺服器索要資料,後端伺服器返回json字串給瀏覽器,從而使瀏覽...