首页
学习
活动
专区
工具
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

54910

服务渲染 VS 客户渲染

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

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

服务渲染 vs 客户渲染

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

53720

服务渲染 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.7K20

浏览器渲染原理

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

96220

服务器渲染和客户渲染

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

6.8K50

浏览器渲染原理】

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

68320

浏览器渲染流程

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

44730

浏览器渲染原理

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

99520

浏览器渲染原理

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

48310

浏览器渲染机制

有哪些提高浏览器渲染性能的方法 回答关键点 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
领券