【Nuxt】服务端渲染 SSR

news2025/1/25 4:38:58

SSR 概述

服务器端渲染全称是:Server Side Render,在服务器端渲染页面,并将渲染好HTML返回给浏览器呈现。

SSR应用的页面是在服务端渲染的,用户每请求一个SSR页面都会先在服务端进行渲染,然后将渲染好的页面,返回给浏览器呈现。

构建SSR应用常见的库和框架有:Vue Nuxt, React Next.js等,SSR应用也称同构应用。

Nuxt:

在这里插入图片描述

优缺点

■SSR的优点

  • 更快的首屏渲染速度
    √浏览器显示静态页面的内容要比JavaScript动态生成的内容快得多。
    √当用户访问首页时可立即返回静态页面内容,而不需要等待浏览器先加载完整个应用程序。
  • 更好的SEO
    √爬虫是最擅长爬取静态的HTML页面,服务器端直接返回一个静态的HTML给浏览器。
    √这样有利于爬虫快速抓取网页内容,并编入索引,有利于SEO。
  • SSR应用程序在Hydration之后依然可以保留Web应用程序的交互性。比如:前端路由、响应式数据、虚拟DOM等。

■SSR的缺点

  • SSR通常需要对服务器进行更多API调用,以及在服务器端渲染需要消耗更多的服务器资源,成本高。
  • 增加了一定的开发成本,用户需要关心哪些代码是运行在服务器端,哪些代码是运行在浏览器端。
  • SSR配置站点的缓存通常会比SPA站点要复杂一点。

跨请求状态污染

  • 在SPA中,整个生命周期中只有一个App对象实例或一个Router对象实例或一个Store对象实例都是可以的,因为每个用户在使用浏览器访问SPA应用时,应用模块都会重新初始化,这也是一种单例模式。
  • 然而,在SSR环境下,App应用模块通常只在服务器启动时初始化一次。同一个应用模块会在多个服务器请求之间被复用,而我们的单例状态对象也一样,也会在多个请求之间被复用,比如:
    • 当某个用户对共享的单例状态进行修改,那么这个状态可能会意外地泄露给另一个在请求的用户。
    • 我们把这种情况称为:跨请求状态污染。
  • 为了避免这种跨请求状态污染,SSR的解决方案是:
    • 可以在每个请求中为整个应用创建一个全新的实例,包括后面的router和全局store等实例:
    • 所以我们在创建App或路由或Stor对象时都是使用一个函数来创建,保证每个请求都会创建一个全新的实例。
    • 这样的缺点就是需要消耗更多的服务器资源

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1977769.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

STM32 | ADC+RS485(第十天)

点击上方"蓝字"关注我们 01、ADC概述 ADC, Analog-to-Digital Converter的缩写,指模/数转换器或者模拟/数字转换器。是指将连续变量的模拟信号转换为离散的数字信号的器件。真实世界的模拟信号.例如温度、压力、声音或者图像等,需要转换成更容易储存、处理和发射的…

【公考新手教程】公考新手小白备考规划

公考 公考相关考试国考省考 行测常识判断言语理解与表达数量关系判断推理(重中之重)图推定义判断类比逻辑判断 资料分析(重中之重) 申论(很重要,提升困难)公基推荐考公软件粉笔华图在线bilibili…

零基础开始学习鸿蒙开发-文章推荐栏获取接口数据并展示

目录 1.新建文章列表布局页面,通过静态数据,编写好布局页面。 1.1 通过行ArticleCard布局构建单个文章展示的item项 1.2 使用了ObjectLink装饰器(尽管这不是ArkUI标准API的一部分,特定框架或自定义的扩展)&#xff0c…

在自定义数据集上训练现有的Detectron2模型

这段内容介绍了将使用一个气球分割数据集(仅包含一个类别:气球)来训练一个气球分割模型。训练过程将以一个预训练在COCO数据集上的模型为基础,这些模型可以在Detectron2的模型库中获取。需要注意的是,COCO数据集本身并…

神仙公司名单(苏州)

神仙公司(苏州) 前几天虽辟谣了 苏州佳能 N12/2N12 的裁员赔偿,但也同时指出了苏州是外企偏多,就业环境和生活节奏平衡的好城市。 但提到苏州公司,大家第一印象是微软、思科 和 Zoom 此类以 WLB 闻名的明星企业。 确实…

阿里「轨迹可控版Sora」,告别「抽卡」,让视频生成更符合物理规律

目前,扩散模型能够生成多样化且高质量的图像或视频。此前,视频扩散模型采用 U-Net 架构 ,主要侧重于合成有限时长(通常约为两秒)的视频,并且分辨率和纵横比受到固定限制。 Sora 的出现打破了这一限制&#…

【教学类-73-01】20240804镂空瓶子01

背景需求: 瓶子里的春天呀! - 小红书 (xiaohongshu.com)https://www.xiaohongshu.com/explore/63ef87f8000000000703acae?app_platformandroid&ignoreEngagetrue&app_version8.47.0&share_from_user_hiddentrue&xsec_sourceapp_share&…

谷粒商城实战笔记-vagrant避坑指南

文章目录 一,虚拟机磁盘空间不足问题原因解决方案 二,虚拟机导致C盘空间不足 一,虚拟机磁盘空间不足 使用vagrant管理虚拟机的过程中遇到了一个问题,虚拟机安装完成后,很快磁盘dev/sda1就满了,40G的空间&a…

链表篇: 04-寻找两个链表的第一个公共结点

解题思路: 方案一:长度统计法 从题目中可以看到,两个链表有长度差,这里可以先让长度比较长的链表先把长度差走完,这里假设为 pHead1, 先让 pHead1 把长度差走完,之后让两个链表同时往后进行遍历&#xff…

01:【stm32】软件安装及stm32的简要介绍

软件安装及stm32的简要介绍 1、软件安装1.1、安装Keil5 MDK软件1.2、安装DFP1.3、安装ARMCC编译器1.4、安装ST-Link驱动1.5、程序下载 2、stm32的介绍 1、软件安装 1.1、安装Keil5 MDK软件 ①先在D盘新建一个名为Keil5的文件夹。然后在Keil5文件夹里面新建2个文件夹&#xff0…

Vue从入门到精通全网最强保姆级教程

Vue是什么?为什么要学习他 Vue是什么? Vue是前端优秀框架, 是一套用于构建用户界面的渐进式框架 为什么要学习Vue 1 Vue是目前前端最火的框架之一 2 Vue是目前企业技术栈中要求的知识点 3 Vue可以提升开发体验 4 Vue学习难度较低 5 ..…

使用GCC编译Notepad++的插件

Notepad的本体1是支持使用MSVC和GCC编译的2,但是Notepad插件的官方文档3里却只给出了MSVC的编译指南4。 网上也没有找到相关的讨论,所以我尝试在 Windows 上使用 MinGW,基于 GCC-8.1.0 的 posix-sjlj 线程版本5,研究一下怎么编译…

【Kubernetes】Deployment 的创建和使用(实战)

Deployment 的创建和使用 创建 deployment-demo.yaml 文件,并在其中输入以下内容: apiVersion: apps/v1 kind: Deployment metadata:name: deployment-demolabels:app: nginx spec:replicas: 3selector:matchLabels:app: nginxtemplate:metadata:labels…

Go语言加Vue3零基础入门全栈班15 gin+gorm+vue3用户管理系统实战录播课 2024年08月04日 课程笔记

预览 登录页面: 首页: 用户列表: 新增用户: 删除用户: 暗黑模式: 概述 如果您没有Golang的基础,应该学习如下前置课程。 01 Golang零基础入门课_20240726_149元02 Golang面向对象…

3.11.样式迁移

样式迁移 ​ 使用卷积神经网络,自动的将一个图像中的风格应用在另一图像之上,即样式迁移(style transfer) ​ 为了完成这一过程,我们需要两张输入图像:一张是内容图像,一张是风格图像,随后使用神经网络修…

【Nuxt】内置组件和全局样式使用

内置组件 Nuxt3框架也提供一些内置的组件,常用的如下: SEO组件:Html、Body、Head、Title、Meta、Style、Link、NoScript、BaseNuxtWelcome:欢迎页面组件,该组件是nuxt/ui的部分NuxtLayout:是Nuxt自带的页面布局组件NuxtPage:是N…

《Windows API每日一练》24.1 WinSock简介

本节将逐一介绍WinSock的主要特性和组件,套接字、WinSock动态库的使用。 本节必须掌握的知识点: Windows Socket接口简介 Windows Socket接口的使用 第178练:网络时间校验 24.1.1 Windows Socket接口简介 ■以下是WinSock的主要特性和组件…

Nginx代理(反向代理详解)

概述 正向代理: 正向代理通常用于客户端需要访问外部网络资源,但出于安全或策略考虑,客户端无法直接访问这些资源。正向代理服务器位于客户端和目标服务器之间,客户端通过代理服务器发送请求,代理服务器再将请求转发…

云原生应用程序简介

云原生应用程序简介 提示 该内容摘自电子书《为 Azure 构建云原生 .NET 应用程序》,可在**.NET Docs**上获取,也可以免费下载 PDF 并离线阅读。 另一天,在办公室研究“下一件大事”。 你的手机响了。这是友好的招聘人员打来的,他每…

备考2024年美国数学竞赛AMC10:吃透1250道历年真题和知识点(持续)

最近有家长问好真题网,有什么含金量比较高的初中生数学竞赛吗?美国数学竞赛AMC10是个不错的选择。根据近年的时间安排,距离2024年AMC10美国数学竞赛开赛预计还有2个多月的时间,实践证明,做真题,吃透真题和背…