什么是服务端渲染 (SSR)?
服务端渲染:页面渲染过程是在服务端完成,最终的HTML字符串,直接通过请求发送给客户端。
vue官方:服务器渲染的 Vue.js 应用程序也可以被认为是"同构"或"通用",因为应用程序的大部分代码都可以在服务器和客户端上运行。
客户端渲染:客户端请求页面时,返回是空HTML,通过请求完js,css等,在客户端进行渲染(浏览器)。
SSR的优势
服务器端渲染的优势就是容易 SEO,首屏加载快,因为客户端接收到的是完整的 HTML 页面。
利于SEO:不同爬虫工作原理类似,只会爬取源码,不会执行网站的任何脚本(Google除外,据说Googlebot可以运行javaScript)。
首屏加载快:首页是通过node加载的HTML字符串,用户直接可以看到完整HTML,所以更快。
缺点
渲染过程在后端完成,那么肯定会耗费后端资源。费流量,即使局部页面的变化也需要重新发送整个页面。同时学习成本也相对于提高了,以nuxtjs来说,你需要会node和koa2等。
客户端渲染
优势是:节省后端资源,局部刷新页面,多端渲染,前后端分离。
缺点是:首屏性能差,白屏,无法(或很难)进行 SEO等。