Ajax请求也要时间吧,后端直接把整个页面输出,不挺好?
动态输出了,缓存去哪儿?
首屏输出,后端渲染快;切换页面的时候,一般ajax请求的数据量会小得多,所以一般ajax会比较快。
补充:我觉得上面的说法是不太正确的。多页应用的情况:首页前端渲染慢的原因应该是返回html后又进行一次ajax的数据请求,然后再渲染,实际上慢在ajax请求,而不是渲染。如果首屏返回的包括一些基本的html和需要的数据,就不需要再次发送ajax请求,直接使用数据来“前端渲染”,实际上这样速度与后端渲染的速度没有多大的差异。甚至我猜测这时“前端渲染”可能还会更快,因为请求的数据量会更小。
但一般说前端渲染首屏会慢是因为单页应用第一次打开页面时加载的页面太多。
访问量大且数据更新较快的页面,使用后端渲染,是比较公认的做法。后端将数据都渲染好,返回给前端,无需再去加载数据,自然会快不少。数据更新频率不大或者访问量较小的页面,还是推荐前端渲染。一来方便客户端缓存,而来有效减少整页刷新的请求出现。
访问量大、但是一定时间内变化不大的页面,服务器端做动态页面静态化,例如 163 的首页,如果前端用 ajax 访问接口然后渲染,光接口的访问都会把服务器拖死。
现在已经不是几年前了,前端应用变化非常快,快的传统写PHP、JSP的程序员有点接受不了现实。
1、首先前端渲染开发效率高。前端使用Angular、Vue等框架可以可以快速编写复杂的页面,原来PHP+jQuery要写50行的代码现在人家前端5行写完了。Vue中v-show、v-for等指令比PHP Smarty的{if $abc}这种模板语法好用到不止几倍。对于大型前端项目,带来不下于3~5倍的效率提升。
v-show
v-for
{if $abc}
2、多数情况这样下这样可以给服务器减压。渲染页面不是一个很轻的活,服务器渲染页面也是要吃CPU和IO的。
3、其实相当多的PHP、JSP程序员也算是前端程序员,简单的CURD,大部分时间还是花在写HTML和CSS。大型项目中业务层往往使用Java、Python开发,对外暴露一套RESTFul API或Json-RPC。这种趋势下,除非是努力提升自身,传统的PHP、JSP程序员是没有市场的。
后端输出的东西,不也得浏览器显示?
后端渲染用的是服务器资源,前端渲染用的是客户端资源。如果所有的访问都是同样的页面还好,稍微有点个性的应用,服务器撑不住的。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(7)
动态输出了,缓存去哪儿?
首屏输出,后端渲染快;
切换页面的时候,一般ajax请求的数据量会小得多,所以一般ajax会比较快。
补充:
我觉得上面的说法是不太正确的。
多页应用的情况:
首页前端渲染慢的原因应该是返回html后又进行一次ajax的数据请求,然后再渲染,实际上慢在ajax请求,而不是渲染。
如果首屏返回的包括一些基本的html和需要的数据,就不需要再次发送ajax请求,直接使用数据来“前端渲染”,实际上这样速度与后端渲染的速度没有多大的差异。
甚至我猜测这时“前端渲染”可能还会更快,因为请求的数据量会更小。
但一般说前端渲染首屏会慢是因为单页应用第一次打开页面时加载的页面太多。
访问量大且数据更新较快的页面,使用后端渲染,是比较公认的做法。后端将数据都渲染好,返回给前端,无需再去加载数据,自然会快不少。
数据更新频率不大或者访问量较小的页面,还是推荐前端渲染。一来方便客户端缓存,而来有效减少整页刷新的请求出现。
访问量大、但是一定时间内变化不大的页面,服务器端做动态页面静态化,例如 163 的首页,如果前端用 ajax 访问接口然后渲染,光接口的访问都会把服务器拖死。
现在已经不是几年前了,前端应用变化非常快,快的传统写PHP、JSP的程序员有点接受不了现实。
1、首先前端渲染开发效率高。前端使用Angular、Vue等框架可以可以快速编写复杂的页面,原来PHP+jQuery要写50行的代码现在人家前端5行写完了。Vue中
v-show
、v-for
等指令比PHP Smarty的{if $abc}
这种模板语法好用到不止几倍。对于大型前端项目,带来不下于3~5倍的效率提升。2、多数情况这样下这样可以给服务器减压。渲染页面不是一个很轻的活,服务器渲染页面也是要吃CPU和IO的。
3、其实相当多的PHP、JSP程序员也算是前端程序员,简单的CURD,大部分时间还是花在写HTML和CSS。大型项目中业务层往往使用Java、Python开发,对外暴露一套RESTFul API或Json-RPC。这种趋势下,除非是努力提升自身,传统的PHP、JSP程序员是没有市场的。
后端输出的东西,不也得浏览器显示?
后端渲染用的是服务器资源,前端渲染用的是客户端资源。如果所有的访问都是同样的页面还好,稍微有点个性的应用,服务器撑不住的。