首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Vue服务渲染和Vue浏览器渲染的性能对比

本人在公司做Vue项目的时候,一直苦于产品、客户对首屏加载要求,SEO的诉求,也想过很多解决方案,本次也是针对浏览器渲染不足之处,采用了服务渲染,并且做了两个一样的Demo作为比较,更能直观的对比Vue...而Vue只能运行在IE9以上的浏览器,你可能也想为那些老式浏览器提供基础内容 - 或者是在命令行中使用 Lynx的时髦的黑客 基于以上的一些问题,服务渲染呼之欲出.......这里跟服务界面一样,不一样的是url已经不是之前的 #/而变成了请求形式 / 这样每当浏览器发送一个页面的请求,会有服务器渲染出一个dom字符串返回,直接在浏览器段显示,这样就避免了浏览器渲染的很多问题...为了更清晰的对比两次渲染的结果,我做了一次实验,把两个想的项目build后模拟生产环境,在浏览器netWork模拟网速3g环境,先来看看服务渲染的结果: ?...想要自己运行对比的小伙伴可以访问我的github,我已将源码放到上面: 1.浏览器渲染Demo: https://github.com/monkeyWangs/doubanMovie 2.服务渲染Demo

54710

服务渲染 VS 客户渲染

服务渲染 服务器渲染的特点 不足 我们看到的内容都是在服务器渲染完的(JSP、PHP、ASP、ASP.NET、NODE…),客户只是把所有渲染好的内容呈现在页面中而已,然而我们第一次渲染完,页面中的某部分数据要更新了...,我们需要让服务器整体重新的渲染一次,把最新的页面(包含最新的数据)返回给客户,客户只能整体刷新页面展示最新的内容 => “全局刷新” 性能和体验等都非常的差,而且服务器压力也很大… 优点 如果服务器性能比较高...,页面呈现出来的速度会快一些,因为只要从服务器拿到内容,一切信息都已经准备好了 由于内容在服务器就已经渲染好了,所以页面渲染完成后,在页面的源代码中都可以看到内容,有利于SEO搜索引擎优化 客户渲染...优点 可以实现页面中内容局部刷新,而且渲染的操作交给客户端来做,这样的来处理,性能体验更好,也减轻了服务器的压力 而且它还可以实现只把部分区域数据获取到,也即是不会一次全拿到整个页面的数据...,等用户的滚动到某个区域后再请求对应的数据,实现数据的分批异步加载 不足 由于客户渲染的内容没有出现在页面的原代码中,不利于SEO优化

4910
您找到你想要的搜索结果了吗?
是的
没有找到

服务渲染 vs 客户渲染

概念 服务渲染(吐) 服务在返回 html 之前,在特定的区域,符号里用数据填充,再给客户,客户只负责解析 HTML 。...服务渲染 也被称为 fat-server, thin-client 模式 服务渲染 客户渲染(填) html 仅仅作为静态文件,客户在请求时,服务不做任何处理...客户渲染 也被称为 fat-client, thin-server 模式 客户渲染 异同 渲染本质一样,都是字符串拼接,将数据渲染进一些固定格式的html代码中形成最终的...服务渲染性能消耗在服务,当用户量比较多时,缓存部分数据以避免过多数据重复渲染。...如果用户特定(user-specific),即对于不同用户需要渲染不同内容,缓存是不可用的。 是否有其他解决客户渲染不足之处的方法?

53120

服务渲染 vs 客户渲染

概念 服务渲染(吐) 服务在返回 html 之前,在特定的区域,符号里用数据填充,再给客户,客户只负责解析 HTML 。...也被称为 fat-server, thin-client 模式 客户渲染(填) html 仅仅作为静态文件,客户在请求时,服务不做任何处理,直接以原文件的形式返回给客户客户,然后根据 html...服务渲染性能消耗在服务,当用户量比较多时,缓存部分数据以避免过多数据重复渲染。...利弊 同构 为了解决客户渲染首屏慢与 SEO 问题,同构开始出现。 同构:前后端共用 JS,首次渲染时使用 Node.js 来直出 HTML。一般来说同构渲染是介于前后端中的共有部分。...如果用户特定(user-specific),即对于不同用户需要渲染不同内容,缓存是不可用的。 是否有其他解决客户渲染不足之处的方法?

2.2K60

Vue 服务渲染 or 预渲染

关于 SEO ,Vue 也有现成的解决方案: Vue 服务渲染 那么 什么是服务渲染 服务将完整的页面 html 输出到客户显示,与 SPA (Single-Page-Application)使用...为什么使用服务渲染 更好的 SEO 更快的内容到达时间 服务渲染 or 预渲染 就像官网所说的,如果你调研服务器渲染(SSR)只是用来改善少数营销页面(例如 /, /about, /contact...等)的 SEO,那么你可能需要预渲染,一个典型的预渲染使用场景可能类似这个网站。...区别 服务渲染和预渲染的使用场景还是有较明显的区别的。预渲染的使用场景更多是我们所说的静态页面的形式,比如说这个网站。...服务渲染适用于大型的、页面数据处理较多且较为复杂的、与服务有数据交互的功能型网站,一个明显的使用场景就是电商网站。

1.6K20

浏览器渲染原理

此外,HTTP也是浏览器使用最广的协议。规定了客户请求,和服务器响应数据格式的协议。...「建立TCP连接」 排队等待结束后,建立TCP连接 「发送HTTP请求」 3.2 服务处理 HTTP 请求的流程 历经千辛万苦,HTTP 的请求信息终于被送达了服务器。...接下来,服务器会根据浏览器的请求信息来准备相应的内容: 「返回请求」 「断开连接」 通常情况下,一旦服务器向客户返回了请求数据,它就要关闭TCP连接。...浏览器渲染流程 接下来我们从一个简单的html页面来谈浏览器渲染流程: 5.1 构建 DOM 树 DOM解析的特点,是不会被阻塞的。...一个完整的渲染流程大致可总结如下: 渲染进程将HTML内容转换为浏览器能够读懂的「DOM树」结构。 渲染引擎将CSS样式表转化为浏览器能够理解的「CSS树」,计算出DOM节点的样式。

95320

服务器渲染和客户渲染

1.服务器渲染 服务器通过页面模板和数据生成HTML页面,返回给客户。 页面模板保存在服务器,数据通过业务逻辑生成。...2.客户渲染 服务器把页面模板和模板需要的数据返回给客户,在客户通过js和浏览器渲染页面。...优点 -前端代码容易维护,降低于服务器的耦合度 -减少服务器负载 -降低服务器响应流量(蚂蚱也是肉) -页面模板可以在前端缓存 缺点 SEO 大页面加载时容易有白屏 页面渲染的逻辑移到前端,代码暴漏(...露点) 如果页面渲染时请求数特别多,会加大服务器的负荷。...3.使用场景 项目庞大,前端和后端分工不清,前端不能专注搞前端,后端不能专注搞后端,建议客户渲染,服务器提供业务接口。SEO的问题可以用特定页面使用服务器渲染就可以了。

6.8K50

浏览器渲染原理】

1 浏览器框架结构 用户界面:就是浏览器自带的呈现给用户的一些标签界面,包含一些标签收藏夹等用于用户提升浏览器体验的功能UI 浏览器引擎:用于在用户界面和渲染引擎之间,传递数据。...浏览器引擎下还有个数据持久层子模块,帮助浏览器存储各种数据,cookie、storage… 渲染引擎:负责渲染用户通过HTTP请求获取的内容。...渲染引擎下边还有很多子模块: 网络模块:负责网络请求 JS解析器:解析和执行js代码 … 渲染引擎也称内核是浏览器的核心。 2....5 浏览器渲染原理 当我们在地址栏输入地址时,浏览器的UI线程会捕捉我们的输入内容, a....UI进程会创建一个渲染进程来渲染页面,浏览器进程通过IPC管道将数据传递给渲染器进程,正式进入渲染流程; d.

67820

浏览器渲染流程

其中浏览器渲染机制是前端性能优化的关键,弄浏览器在背后做了什么,才能在明白如何优化。 浏览器解析 DOM DOM对象是浏览器解析HTML脚本生成的,最终输出一个树状结构的对象。...优化这里的每一步对实现最佳渲染性能至关重要。 构建的过程如下: 布局 有了渲染树,就进入布局阶段。...根据渲染树种确定的每个DOM元素的样式规则,浏览器就能具体计算每个DOM元素最终在屏幕上显示的大小位置,宽高等等几何属性。...这期间会产生多个图层 合并渲染层 来到这里,浏览器渲染过程就接近尾声。每个图层绘制完,浏览器会将其按照合理的顺序合并到同一图层,并显示在浏览器上。...当你Resize窗口的时候(移动没有这个问题),或是滚动的时候。 当你修改网页的默认字体时。

44630

浏览器渲染原理

浏览器是如何渲染页面的? 当浏览器的网络线程收到 HTML 文档后,会产生一个渲染任务,并将其传递给渲染主线程的消息队列。 在事件循环机制的作用下,渲染主线程取出消息队列中的渲染任务,开启渲染流程。...为了提高解析效率,浏览器在开始解析前,会启动一个预解析的线程,率先下载 HTML 中的外部 CSS 文件和 外部的 JS 文件。...第一步完成后,会得到 DOM 树和 CSSOM 树,浏览器的默认样式、内部样式、外部样式、行内样式均会包含在 CSSOM 树中。 渲染的下一步是样式计算。...为了避免连续的多次操作导致布局树反复计算,浏览器会合并这些操作,当 JS 代码全部完成后再进行统一计算。所以,改动属性造成的 reflow 是异步完成的。...浏览器在反复权衡下,最终决定获取属性立即 reflow。 什么是 repaint? repaint 的本质就是重新根据分层信息计算了绘制指令。

47710

浏览器渲染原理

浏览器的内核是指支持浏览器运行的最核心的程序,分为JS引擎和渲染引擎两个部分。 页面加载完成的过程 在网页的地址栏中输入url后,浏览器经历了什么样的过程?...客户根据DNS服务器得到域名对应的ip地址; 客户向该ip地址发送http请求; 服务器收到、处理并返回http请求; 客户收到响应并返回内容。...客户渲染 浏览器收到的其实就是HTML文件,只有HTML格式浏览器才能正确解析。接下来就是浏览器渲染过程。 页面渲染过程 ?...渲染树只会包括需要显示的节点和这些节点的样式信息,如果某个节点是display: none的样式,那就不会构建到渲染树中。 那么,浏览器渲染过程中遇到JS文件会怎么处理?...在渲染过程中,如果遇到就停止渲染,执行JS代码。因为浏览器有GUI渲染线程和JS引擎线程,这两个线程是互斥的,JavaScript的加载、解析和执行会阻塞渲染

99220

浏览器渲染机制

有哪些提高浏览器渲染性能的方法 回答关键点 DOM CSSOM 线程互斥 渲染树 Compositing GPU 加速 当浏览器进程获取到 HTML 的第一个字节开始,会通知渲染进程开始解析 HTML...为了提高浏览器渲染性能,通常的手段是保证渲染流程不被阻塞,避免不必要的绘制计算和重排重绘,利用 GPU 硬件加速等技术来提高渲染性能。 知识点深入 1....浏览器渲染流程 Chromium 的渲染流程的主要步骤如下图所示: 001.png 图片来源 Life of a Pixel 1.1 Parse 阶段:解析 HTML 构建 DOM 树 渲染进程主线程解析...浏览器渲染性能的优化 上一节中是一轮典型的浏览器渲染流程,在流程完成之后,DOM、CSSOM、LayoutObject、PaintLayer 等各种树状数据结构都会保留下来,以便在用户操作、网络请求、JS...2.1 减少渲染中的重排重绘 浏览器重新渲染时,可能会从中间的任一步骤开始,直至渲染完成。因此,尽可能的缩短渲染路径,就可以获得更好的渲染性能。

1K31

浏览器渲染原理

作者:王少飞 浏览器工作大致流程 废话少说,先来看个图: 从上面这个图中,我们可以看到那么几个事: 1)浏览器会解析三个东西: 一个是HTML/SVG/XHTML,事实上,Webkit有三个C++的类对应这三类文档...注意: Rendering Tree 渲染树并不等同于DOM树,因为一些像Header或display:none的东西就没必要放在渲染树中了。...渲染 渲染的流程基本上如下(黄色的四个步骤): 计算CSS样式 构建Render Tree Layout – 定位坐标和大小,是否换行,各种position, overflow, z-index属性 …...当你Resize窗口的时候(移动没有这个问题),或是滚动的时候。 当你修改网页的默认字体时。...对于这些操作,浏览器会马上进行reflow。

2.6K31

SAP UI渲染模式:客户渲染 VS 服务器渲染

基于客户渲染的SAP UI5应用,如果要调试其页面生成逻辑,需要在浏览器里调试JavaScript代码的执行。...正因为基于客户渲染的应用,其页面通过JavaScript在浏览器的执行而动态生成,因此其内容无法被一般的网络爬虫收录,不利于SEO(Search Engine Optimization,搜索引擎优化)...在客户渲染模式下,服务器返回给浏览器的第一个请求,包含的正是这个几乎空白的index.html页面: ? 这个index.html页面尺寸只有4kB,耗时309毫秒: ?...其后,我们团队用TypeScript开发,然后编译成的JavaScript代码,在浏览器里执行,渲染出最终的HTML页面: ?...再看Spartacus的服务器渲染的表现:服务器收到浏览器的页面请求后,在服务器即时渲染页面,并将结果返回: ?

8.1K20

浅析前端渲染与服务渲染

一般来说同构渲染是介于前后端中的共有部分。   客户渲染路线:1. 请求一个html -> 2. 服务返回一个html -> 3. 浏览器下载html里面的js/css文件 -> 4. ...可以用来开发 Web、Serve、Mobile、Desktop 类型的应用 后端渲染的优势 服务渲染不需要先下载一堆 js 和 css 后才能看到页面(首屏性能) SEO 服务渲染不用关心浏览器兼容性问题...(随意浏览器发展,这个优点逐渐消失) 对于电量不给力的手机或平板,减少在客户的电量消耗很重要 以上服务优势其实只有首屏性能和 SEO 两点比较突出。...所以这一定会是一个混合方案,同一个系统中存在两种模板,一种在服务执行,一种在浏览器中执行,互为补充。...在浏览器渲染时,如果数据量并不大,也没有什么大的改变,那么自己用原生的DOM API去操作绰绰有余了,即使有时候有些操作会浪费一些性能资源,影响也不会太大,反而引入了框架和库却只用了一部分功能是一种浪费

3.2K40

服务渲染

更新时间:2022-05-04 导读 本文主要是从三个方面学习服务渲染,内容整理自多个博客。 服务渲染是什么?什么是服务渲染?(服务渲染的运行机制) 为什么使用服务渲染?...(服务渲染的应用实例与使用场景) 概念 首先,说到服务渲染我们要先对渲染这个概念有一个大概的了解 渲染:就是将数据和模版组装成html 客户渲染(CSR)VS服务渲染(SSR) 那么,为了更好的理解服务渲染...客户渲染 概念 解释一:客户渲染模式下,服务渲染的静态文件给到客户,客户拿到服务发送过来的文件自己跑一遍js,根据JS运行结果,生成相应DOM,然后渲染给用户。...在客户渲染模式下,我们除了加载 HTML,还要等渲染所需的这部分 JS 加载完,之后还得把这部分 JS 在浏览器上再跑一遍。...通过服务渲染的概念以及它的两个特点:首屏加载速度快、SEO优化 我们知道,服务渲染其实就是由浏览器做的一些事情,我们放到了服务端去做,那么对于掘金、简书、CSDN、知乎等网站的搭建,这种在网上一搜搜出一堆东西的网站

1.3K40
领券