什么是服务端渲染,为什么要使用服务端渲染

什么是服务端渲染 (SSR)?

服务端渲染:页面渲染过程是在服务端完成,最终的HTML字符串,直接通过请求发送给客户端。

vue官方:服务器渲染的 Vue.js 应用程序也可以被认为是"同构"或"通用",因为应用程序的大部分代码都可以在服务器和客户端上运行。

 

 

 

客户端渲染:客户端请求页面时,返回是空HTML,通过请求完js,css等,在客户端进行渲染(浏览器)。

 

 

 

 

 

 

SSR的优势

服务器端渲染的优势就是容易 SEO,首屏加载快,因为客户端接收到的是完整的 HTML 页面。

利于SEO:不同爬虫工作原理类似,只会爬取源码,不会执行网站的任何脚本(Google除外,据说Googlebot可以运行javaScript)。

首屏加载快:首页是通过node加载的HTML字符串,用户直接可以看到完整HTML,所以更快。

 

缺点

渲染过程在后端完成,那么肯定会耗费后端资源。费流量,即使局部页面的变化也需要重新发送整个页面。同时学习成本也相对于提高了,以nuxtjs来说,你需要会node和koa2等。

 

客户端渲染

优势是:节省后端资源,局部刷新页面,多端渲染,前后端分离。
缺点是:首屏性能差,白屏,无法(或很难)进行 SEO等。

 

借用狼叔的话:toB的无所谓,toC的还是必要的。另外从统一技术栈的角度看,同时支持2B和和2C还是必要的。所以,有意义的,而且是必要的组成部分。pc端也能用react,无论复用价值,还是对开发的技能成长都非常有价值。

参考更多讨论:https://www.zhihu.com/question/308792091

 

posted @ 2020-05-10 17:02  前端小厨-美食博主  阅读(5309)  评论(4编辑  收藏  举报