网页渲染技术发展杂谈

作者: 张阳君 分类: 前端技术

话说天下大势,合久必分,分久必合,互联网技术也是如此。早年做网站离不开aspphp被认为是世界上最好的编程语言,哈哈)和jsp等后台技术,那时候的前端处于互联网鄙视圈的最底层,甚至大多数公司都没有前端这个部门,很多后台兼做页面,这大概就是全栈的最初形态吧。然而,随着Ajax技术的普及,一切都发生了变化...

自从有了Ajax技术,很多公司内部开始出现分化,前端成为了独立的部门。但那个时候的前端仍被视为页面仔,除了写好模板给后台使用之外,就是用ajax做点异步加载的功能了。

前端真正和后端分离的时间应该是在模块化技术爆发之后,当年盛行的RequirejsSeajs还有类似GruntGulp等构建工具都促成了前端的飞速发展。后台要做的就是提供好接口,页面该怎么展现,就丢给前台吧。

之后es6标准出台,AngularReactVue开始三分天下,nodejs在Javascript领域一统天下,前端这个行业逐渐变得专业化、工程化。

前后端分离之后,网页的渲染工作自然都在浏览器端做处理,这就给搜索引擎带来了很大的麻烦。

按照传统模式,爬虫抓取到的url都能返回一个已经渲染好的页面。而面对前端渲染的页面,古老的爬虫本身没有浏览器的宿主环境,得到的就只会是一个空的页面。虽然现在很多爬虫都具备了浏览器环境,但是抓取这类页面的效果都不是很理想。

最近两年,服务器端渲染这个词又重新回到了码农们的视野中。为什么是“又”呢?因为早年phpjsp等技术本质上就是服务器端渲染!那么两者有什么区别呢?现代的服务器端渲染一般是交给nodejs去处理的。node服务器获取接口服务器的数据,然后渲染好页面,输出到浏览器中。对搜索引擎来讲,爬虫爬取的其实是node服务器返回的数据。

现代服务器端渲染最大的特点是首屏渲染,接下来的工作就交给浏览器去处理了。

聊到这里你会发现,前后端技术的发展真的是合分合合,螺旋式上升。说不定在不久的将来,web技术可以实现大一统(JS差一点就做到了)。

目前来看,三大前端框架都有各自的服务器端渲染方案,业内也有机构将他们的渲染方案做成了成熟的框架,ReactNext.jsVueNuxt.js笔者接下来的几篇文章将深入探讨VueNuxt.js,带大家更好地认识服务器端渲染。

(全文完)

0 条评论
回复
支持 Markdown 语法
暂无评论,来抢个沙发吧!