赞
踩
后端提供的接口所返回的数据格式有时候太适合前端直接使用,这些处理虽可以放在前端来进行,但也许数据量一大便会浪费浏览器性能。因而现今,增加node端便是一种良好的解决方案。
客户端渲染路线:
1. 请求一个html
2. 服务端返回一个html
3. 浏览器下载html里面的js/css文件
4. 等待js文件下载完成
5. 等待js加载并初始化完成
6. js代码终于可以运行,由js代码向后端请求数据( ajax/fetch )
7. 等待后端数据返回
8. dom( 客户端 )从无到完整地,把数据渲染为响应页面
服务端渲染路线:
1. 请求一个html
2. 服务端请求数据( 内网请求快 )
3. 服务器初始渲染(服务端性能好,较快)
4. 服务端返回已经有正确内容的页面
5. 客户端请求js/css文件
6. 等待js文件下载完成
7. 等待js加载并初始化完成
8. react-dom( 客户端 )把剩下一部分渲染完成( 内容小,渲染快 )
时间耗时比较:
1. 数据请求:由服务端请求数据而不是客户端请求数据,这是“快”的一个主要原因。服务端在内网进行请求,数据响应速度快。客户端在不同网络环境进行数据请求,且外网http请求开销大,导致时间差(主要原因)。
2. 步骤:服务端是先请求数据然后渲染“可视”部分,而客户端是等待js代码下载、加载完成再请求数据、渲染。即:服务端渲染不用等待js代码下载完成再请求数据,并会返回一个已经有内容的页面。
3. 渲染性能:服务端性能比客户端高,渲染速度快( 猜测,该项数据不详 )。
4. 渲染内容:服务端渲染会把”可视“部分先渲染,然后交给客户端再作部分渲染。而客户端渲染,则是从无到有,需要经历完整的渲染步骤。
关于nodejs作为系统中间件的理解
在浏览器端和java端使用nodejs作为中间件,node调用java后端发布的接口
转换数据,合并接口
和Java的多个接口通信,给浏览器暴露一个接口。浏览器端同时发起多个http请求时,非常耗时,
跨域问题
前后端分离,本地前端开发调用接口会有跨域问题。用nodejs搭建本地http服务器,并且判断访问接口URL时进行转发,完美解决本地开发时候的跨域问题。
渲染机制
服务端渲染,便于SEO,性能也会好一些(对于企业管理类软件好像没用)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。