https://mp.weixin.qq.com/s/v1c69bJ5PxGcqt-ZU4FVXw

https://juejin.im/entry/590ca74b2f301e006c10465f

https://www.zhihu.com/question/32524504?sort=created

vue2.0才推出vue 服务端渲染,用于提升首屏渲染速度,不过对于海量PV级的业务,直出模板的渲染效率直接影响服务端的压力

前后端分离的方式不利于网站SEO,有SEO需求的页面迫切需要服务端渲染。

node框架选型(主流):hapi、express、koa。

vue和react可以进行前后端同构,一样的逻辑不用写两份。

当前常用的模板渲染方案可以归结成两类:

  • a类:string-based (基于字符串拼接),传统,输出的就是字符串、所以可以用于生成ini、css、shell等其他文件,而不一定要是html,对于以输出页面为主的服务,这种模式还是挺不错的。

  • b类:virtual-dom-based(基于虚拟dom对象),新潮,基本上不考虑输出HTML/XML以外的东西。dom-base的模板引擎可以实现虚拟dom之类的东西,在数据变化的时候,实现最少的更新操作,而不像string-base的引擎,数据发生变化就要全部重新生成一大堆的字符串。

vue ssr 的模板是b类。

string-based模板渲染

比较好用的前端模板引擎是:https://github.com/ecomfe/etpl 和 https://aui.github.io/art-template/zh-cn/index.html

字符串渲染的性能其实也就在后端比较有意义,毕竟每一次渲染都是在消耗服务器资源,但在前端,用户只有一个,几十毫秒的渲染时间跟请求延迟比起来根本不算瓶颈

一个好的模板引擎

具备纯前端环境的解析能力

具备良好的调试能力。可以使用Source Map或其它自定义的手段直接映射回原模板片段,不过现在并没有什么模板引擎实现了这一功能

承担XSS的防范,要求默认转义和特定语法的无转义输出(用于富文本)

片段的复用

支持数据输出时的处理,如filter功能。假如数据处理放到模板渲染前用js逻辑处理,会导致业务逻辑混杂,增加维护的负担

支持动态数据,即依赖运行环境的能力(而不是模板编译的环境)

每个模板实例之间是隔离(如一个页面中多个相同的模板片段id不出现冲突)

vue ssr

这里提供了3个可运行的vue-ssr例子:https://github.com/947133297/ssr/tree/master/vue

以及我学习时的文档备注:http://www.cnblogs.com/hellohello/p/8243400.html

vue ssr的更多相关文章

  1. 转载一篇好理解的vue ssr文章

    转载:原文链接https://www.86886.wang/detail/5b8e6081f03d630ba8725892,谢谢作者的分享 前言 大多数Vue项目要支持SSR应该是为了SEO考虑,毕竟 ...

  2. Vue SSR不可不知的问题

    Vue SSR不可不知的问题 本文主要介绍Vue SSR(vue服务端渲染)的应用场景,开发中容易遇到的一些问题,提升ssr性能的方法,以及ssr的安全性问题. ssr的应用场景 1.SEO需求 SE ...

  3. Vue SSR 配合Java的Javascript引擎j2v8实现服务端渲染2创建Vue2+webpack4项目

    前提 安装好nodejs并配置好环境变量,最好是 node10,https://nodejs.org/en/download/ 参考我之前的文章 debian安装nodejs Yarn &&a ...

  4. Vue SSR常见问题、异常处理以及优化方案

    本文主要介绍Vue SSR(vue服务端渲染)的应用场景,开发中容易遇到的一些问题,提升ssr性能的方法,以及ssr的安全性问题. SSR的应用场景 1.SEO需求 SEO(Search Engine ...

  5. Vue(SPA) WebPack模块化打包、SEO优化(Vue SSR服务端同构直出)、全浏览器兼容完整解决方案

    白驹过隙,时光荏苒 大概去年这个时候写了angular 结合webpack的一套前端方案,今年此时祭出vue2结合webpack的一套前端方案. 明年的这个时候我又是在做什么... 读在最前面: 1. ...

  6. Vue SSR的渲染性能

    一.前言 前端技术年年有新宠,Vue.js 2.0以其轻量级.渐进式.简洁的语法在MVVM框架中脱颖而出,一经推出便很受业界青睐. 为了提高首屏渲染速度 缓存+直出 是必不可少的.在Vue 1× 时代 ...

  7. 理解vue ssr原理,自己搭建简单的ssr框架

    前言 大多数Vue项目要支持SSR应该是为了SEO考虑,毕竟对于WEB应用来说,搜索引擎是一个很大的流量入口.Vue SSR现在已经比较成熟了,但是如果是把一个SPA应用改造成SSR应用,成本还是有些 ...

  8. vue SSR 部署详解

    先用vue cli初始化一个项目吧. 输入命令行开始创建项目: vue create my-vue-ssr 记得不要选PWA,不知为何加了这个玩意儿就报错. 后续选router模式记得选 histor ...

  9. vue ssr 项目改造经历

    vue ssr 项目改造经历 由于工作项目需求,需要将原有的项目改造,vue ssr 没有用到nuxt,因为vue ssr更利于seo,没办法,一个小白的改造经历, 首先说明一下,小白可以借鉴,高手也 ...

随机推荐

  1. Unrecogized font family ‘Ionicons’ 在ios上报错,android正常

    解决方法: react-native link react-native-vector-icons 很多模块都需要link一下

  2. android okhttp和webview session共享

    public static OkHttpClient get(Context context){ OkHttpClient.Builder builder = new OkHttpClient.Bui ...

  3. javascript 数组、json连接

    json(或数组).concat(需要添加的json(或数组))

  4. C#基础之方法

    方法组成为: public void Fun(string name) { 代码块 } 1.方法的访问级别:修饰符,即上边的Public 2.返回类型:方法是否具有返回值,上边方法无返回值即为void ...

  5. hibernate Day2 案例代码

    1.编写实体类Person package com.icss.pojo; public class Person { private int uid; private String uname; pr ...

  6. Unity Shader入门精要学习笔记 - 第10章 高级纹理

    转载自 冯乐乐的 <Unity Shader入门精要> 立方体纹理 在图形学中,立方体纹理是环境映射的一种实现方法.环境映射可以模拟物体周围的环境,而使用了环境映射的物体可以看起来像镀了层 ...

  7. Apache的多处理模块MPM

    本博文主要参数 Apache 2.2文档以及Apache模块开发指南 Apache的整个运行可以分为两个阶段:启动阶段和运行阶段. 在启动阶段时,它以ROOT特权来启动,进行解析配置文件(一般就是ht ...

  8. Java 多态抽象

  9. Jquery测试纠错笔记

    一. 解析: 获取元素范围大小顺序依次为: $(#one).siblings("div")>$("#one~div")>$("#one + ...

  10. sql 使用汇总(PQSQL)

    --sql structured query language --DML--Data Manipulation Language--数据操作语言 query information (SELECT) ...