服务端渲染:页面渲染过程是在服务端完成,最终的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服务器