服務端渲染:頁面渲染過程是在服務端完成,最終的HTML字符串,直接經過請求發送給客戶端。css
客戶端渲染:客戶端請求頁面時,返回是空HTML,經過請求完js,css等,在客戶端進行渲染(瀏覽器)。vue
服務器端渲染的優點就是容易 SEO,首屏加載快,由於客戶端接收到的是完整的 HTML 頁面。java
利於SEO:不一樣爬蟲工做原理相似,只會爬取源碼,不會執行網站的任何腳本(Google除外,聽說Googlebot能夠運行javaScript)。node
首屏加載快:首頁是經過node加載的HTML字符串,用戶直接能夠看到完整HTML,因此更快。react
渲染過程在後端完成,那麼確定會耗費後端資源。費流量,即便局部頁面的變化也須要從新發送整個頁面。同時學習成本也相對於提升了,以nuxtjs來講,你須要會node和koa2等。後端
優點是:節省後端資源,局部刷新頁面,多端渲染,先後端分離。
缺點是:首屏性能差,白屏,沒法(或很難)進行 SEO等。瀏覽器
參考更多討論:https://www.zhihu.com/question/308792091服務器