簡單說,伺服器是花錢的。

客戶端是消費客戶的電腦處理能力,所以可以節省自己的伺服器處理量,處理速度。換算成cpu時間,就是錢。雲處理器基本就是這麼個演算法。自己架設獨立伺服器,就是固定cpu處理量。多了,只卡不崩就已經是大牛級別了。

把伺服器的消耗轉移到用戶客戶端瀏覽器,就是前端的活。

小公司基本沒需求,大公司需求無限大。基本就是這麼個理解法。

各有利弊,視具體情況來用才好。

首屏載入用伺服器渲染,其他的用客戶端渲染,如何?

第一次請求伺服器就把部分已載入數據的 Dom 返回給瀏覽器端,有更好的用戶體驗。這就是常說的「首屏渲染」,對數據量大的情況比較適合。


服務端渲染往往考慮seo,較簡單的頁面速度比前端渲染快很多,數據和模版綁定,不好調試。前端渲染適用於頁面複雜,方便應用組件進行構建,數據請求和模版分離,方便調試。
讓前端做前端,讓後端做後端 自然更爽...

無論哪一個都有兩面性吧。

伺服器端渲染的話,首先,前端耗時少。因為後端拼接完了html,瀏覽器只需要直接渲染出來

其次,有利於SEO。

無需佔用客戶端資源。即解析模板的工作完全交由後端來做,客戶端只要解析標準的html頁面即可,這樣對於客戶端的資源佔用更少,尤其是移動端,也可以更省電。

後端生成靜態化文件

但是另一方面來講的話,伺服器端渲染不利於前後端分離,開發效率低。使用伺服器端渲染,則無法進行分工合作,則對於前端複雜度高的項目,不利於項目高效開發。

並且,佔用伺服器端資源。即伺服器端完成html模板的解析,如果請求較多,會對伺服器造成一定的訪問壓力。而如果使用前端渲染,就是把這些解析的壓力分攤了前端,而這裡確實完全交給了一個伺服器。


web端渲染的劣勢1.SEO 很多爬蟲是不認的。2.首次打開速度,各種載入 速度很慢。

由於這些問題twitter在11年的時候甚至把原來的客戶端渲染改回了服務端渲染。

優勢就是 1.體驗好啊。2.各種原來伺服器做的事情丟給客戶端做了,減少開銷。
推薦閱讀:
相关文章