项目实战之理解代码一(vue.config.js)

news2024/11/26 15:24:50

文章目录

  • CDN

面经天天背,今天总算见到真的了。
OK,接下来让我们走进前端优化性能方式之一:CDN

CDN

CDN(Content Delivery Network,内容分发网络)是用于存储和传输静态资源(如 JavaScript、CSS、图片等)的服务。CDN能够减少服务器负载,提高内容的访问速度。

官网是这么介绍的
在这里插入图片描述哈哈我也看不懂
在这里插入图片描述

使用CDN资源来减少打包体积和提高页面加载速度的原理:

  1. 减少打包体积:在构建应用的时候,如果应用使用了一些第三方库(如Vue、React、Lodash等),通常情况下这些库的代码会被一起打包到最终的bundle文件中。这会导致最终生成的bundle文件体积非常大。而使用CDN的方式,可以直接通过<script>标签将这些第三方库加载进来,这样在构建应用时就不需要将这些库的代码打包到bundle中,从而减小了打包文件的体积。

  2. 提高页面加载速度:CDN服务通常会将内容缓存在多个距离用户更近的节点上,当用户请求内容时,CDN会选择距离用户最近的节点进行响应,这较之直接向源服务器获取数据可以节省了大量的网络传输时间。此外,由于CDN上的资源通常会设置比较长的缓存时间,所以当用户再次访问这些资源时,可以直接从浏览器缓存中获取,无需再次下载,从而大大提高了网页的加载速度。

需要注意的是,使用CDN需要付费,而且不同的CDN服务提供商的服务质量也会有所差异。在选择使用CDN之前,需要充分比较不同服务的性价比,并考虑到可能的负面影响,如CDN服务的稳定性、与现有应用的兼容性等。
请看代码

const cdn = {
    css: [],
    js: [
        // 'https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.min.js',
        // 'https://cdn.jsdelivr.net/npm/vuex@3.6.2/dist/vuex.min.js',
        // 'https://cdn.jsdelivr.net/npm/vue-router@3.5.3/dist/vue-router.min.js',
        // 
    ]
}

这些网址就是项目中使用的一些JavaScript库,在公共的CDN上的路径
那我们来了解官网介绍的别的有点

  1. 改善网站载入时间- 通过将内容分发到访问者附近的CDN 服务器(以及其他优化措施),访问者体验到更快的页面载入时间。由于访客更倾向离开载入速度慢的网站,CDN 可以减少退回率并增加人们在网站上花费的时间长度。换言之,网站速度越快,使用者停留的时间越长。
  2. 减少频宽成本- 网站代管的频宽取用成本是网站的主要费用。透过快取和其他最佳化,CDN 可以降低来源伺服器必须提供的资料量,借此减少网站拥有者的代管成本。
  3. 增加内容可用性和备援- 大量流量或硬体故障会中断正常网站运作。由于CDN 的分布性质,CDN 可以处理更多流量,且对于硬体故障的承受情况也比许多来源伺服器更好。
    4. 改善网站安全性- CDN 可提供DDoS 防护、改善安全性凭证及其他最佳化,以改善安全性。
    关于别的知识看官网吧 https://www.cloudflare.com/learning/ddos/ddos-mitigation/

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

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

相关文章

如何为一个Type类赋值

如何为一个Type类赋值 前言案例准备一、简单赋值 前言 今天我在写代码的时候遇到一个神奇的类——Type,虽然说我们都心知肚明这个类代表着什么&#xff08;字面意思嘛&#xff0c;很好理解&#xff09;&#xff0c;但是实操起来却无从下手&#xff0c;就如何对Type类进行赋值&…

基于 golang 从零到一实现时间轮算法 (二)

Go实现单机版时间轮 上一章介绍了时间轮的相关概念&#xff0c;接下来我们会使用 golang 标准库的定时器工具 time ticker 结合环状数组的设计思路&#xff0c;实现一个单机版的单级时间轮。 首先我们先运行一下下面的源码&#xff0c;看一下如何使用。 https://github.com/x…

一招优化百度网盘下载速度,不开会员也能提高几十倍倍下载速度

​ 百度网盘&#xff08;原百度云&#xff09;是百度推出的一项云存储服务&#xff0c;已覆盖主流PC和手机操作系统&#xff0c;包含Web版、Windows版、Mac版、Android版、Linux信创版、青春版、TV版、iPhone版和iPad版&#xff0c;并覆盖了主流联网车和非联网车。 用…

2023年山东省安全员C证证模拟考试题库及山东省安全员C证理论考试试题

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2023年山东省安全员C证证模拟考试题库及山东省安全员C证理论考试试题是由安全生产模拟考试一点通提供&#xff0c;山东省安全员C证证模拟考试题库是根据山东省安全员C证最新版教材&#xff0c;山东省安全员C证大纲整理…

Python 异常处理:try、except、else 和 finally 的使用指南

异常处理 当发生错误&#xff08;或我们称之为异常&#xff09;时&#xff0c;Python 通常会停止执行并生成错误消息。 try 块用于测试一段代码是否存在错误。 except 块用于处理错误。 else 块用于在没有错误时执行代码。 finally 块用于无论 try 和 except 块的结果如何…

vivado生成bit流错误---[DRC UCIO-1]

拿着开发板的例程&#xff0c;只修改了FPGA芯片&#xff0c;FPGA芯片是同一系列的。运行编译产生bit流出现如下错误 [DRC UCIO-1] Unconstrained Logical Port: 20 out of 22 logical ports have no user assigned specific location constraint (LOC). This may cause I/O con…

U盘显示无媒体怎么办?方法很简单

当出现U盘无媒体情况时&#xff0c;您可以在磁盘管理工具中看到一个空白的磁盘框&#xff0c;并且在文件资源管理器中不会显示出来。那么&#xff0c;导致这种问题的原因是什么呢&#xff1f;我们又该怎么解决呢&#xff1f; 导致U盘无媒体的原因是什么&#xff1f; 当您遇到上…

基于SSM的防疫信息登记系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

【WinForm详细教程七】WinForm中的DataGridView控件

文章目录 1.主要属性DataSource行&#xff08;Row 相关属性&#xff09;列&#xff08;Column 相关属性&#xff09;单元格&#xff08;Cell 相关属性&#xff09;逻辑删除AllowUserToAddRowsAllowUserToDeleteRowsAllowUserToOrderColumns其他布局和行为属性 2.控件中的行、列…

昨天面了个哥们,也就问了4个问题,但好像他被我虐了···

公司最近在招自动化测试岗&#xff0c;居然一天内就收了几百份简历&#xff01;想不到吧&#xff1f;&#xff01;都快面吐了&#xff0c;想招一个合适的技术同学太不容易了&#xff0c;需要去挖的细节太多了。一般来说&#xff0c;很多人都会被问接口工具、aap自动化、测试框架…

Docker Swarm实现容器的复制均衡及动态管理:详细过程版

Swarm简介 Swarm是一套较为简单的工具&#xff0c;用以管理Docker集群&#xff0c;使得Docker集群暴露给用户时相当于一个虚拟的整体。Swarm使用标准的Docker API接口作为其前端访问入口&#xff0c;换言之&#xff0c;各种形式的Docker Client(dockerclient in go, docker_py…

YOLO算法改进6【中阶改进篇】:depthwise separable convolution轻量化C3

常规卷积操作 对于一张55像素、三通道&#xff08;shape为553&#xff09;&#xff0c;经过33卷积核的卷积层&#xff08;假设输出通道数为4&#xff0c;则卷积核shape为3334&#xff0c;最终输出4个Feature Map&#xff0c;如果有same padding则尺寸与输入层相同&#xff08;…

基于设深度学习的人脸性别年龄识别系统 计算机竞赛

文章目录 0 前言1 课题描述2 实现效果3 算法实现原理3.1 数据集3.2 深度学习识别算法3.3 特征提取主干网络3.4 总体实现流程 4 具体实现4.1 预训练数据格式4.2 部分实现代码 5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基于深度学习机器视觉的…

R语言657中单色colors颜色索引表---全平台可用

R语言657中单色colors颜色索引表—全平台可用

记一次pdjs时安装glob出现,npm ERR! code ETARGET和npm ERR! code ELIFECYCLE

如往常一样&#xff0c;我使用pdjs来编译proto文件&#xff0c;但出现了以下报错&#xff1a; 大致就是pdjs的util在尝试执行npm install glob^7.2.1 escodegen^1.13.0时出错了 尝试手动执行安装&#xff0c;escodegen被正确安装&#xff0c;但glob^7.2.1出错 npm ERR! code E…

Adobe:受益于人工智能,必被人工智能反噬

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 总结&#xff1a; &#xff08;1&#xff09;Adobe(ADBE)受益于生成式人工智能的兴起&#xff0c;其一直能实现两位数的收入增长就证明了这一点。 &#xff08;2&#xff09;在生成式人工智能兴起时&#xff0c;该公司就快…

苏州景点梳理(含交通方式)

第一优先级第二优先级 区域名称备注交通需预约/费用市区&#xff1a;苏州博物馆周一闭馆地铁预约拙政园包含太平天国忠王府地铁预约&#xff0c;收费狮子林地铁预约&#xff0c;收费苏州博物馆(西馆)地铁预约北寺塔地铁七里山塘&#xff08;山塘街&#xff09;石路商圈吃饭地铁…

orangepi one nfs启动

先制作好启动tf卡&#xff0c;之后为了快速调试&#xff0c;可以通过nfs替换内核与设备树&#xff0c;无需重新制作启动tf卡。 开发板需要连接网线&#xff0c;uboot默认的网卡驱动在orangepi one上是可以使用的。 下面是nfs启动的步骤&#xff1a; 1、启动开发版&#xff0…

如何解决el-dialog弹窗上面有一层黑色蒙层?

这种情况百分之90%是因为弹窗嵌套弹窗造成的&#xff0c;我遇到的情况是这样的&#xff0c;解决方法是给内层el-dialog加上append-to-body属性&#xff0c;下面是简化后的示例 <el-dialog title"外层 Dialog" :visible.sync"outerVisible"><el-d…

Adobe acrobat 11.0版本 pdf阅读器修改背景颜色方法

打开菜单栏&#xff0c;编辑&#xff0c;首选项&#xff0c;选择辅助工具项&#xff0c;页面中 勾选 替换文档颜色&#xff0c;页面背景自己选择一个颜色&#xff0c;然后确定&#xff0c;即可&#xff01;