当前位置: 首页 > news >正文

大白话页面加载速度,如何优化提升?

大白话页面加载速度,如何优化提升?

咱来好好唠唠页面加载速度这事儿,再说说怎么把它提上去。

页面加载速度是咋回事儿

页面加载速度啊,就好比你去餐厅吃饭,从你坐下点餐到饭菜端上桌的时间。在网页里,就是你在浏览器里输入网址,然后按下回车键,到整个网页完完整整显示在你屏幕上所花的时间。这个时间越短,你等得越不闹心,用起来也就越舒服。要是时间太长,你可能就不耐烦,直接关掉网页走人了。

影响页面加载速度的因素

  • 服务器响应慢:服务器就像是餐厅的厨房,要是厨房做饭的速度慢,你等餐的时间肯定长。服务器处理请求的速度慢,或者服务器离你太远,数据传输的时间就会变长,页面加载速度自然就慢了。
  • 文件体积大:网页里有好多文件,像图片、CSS 代码、JavaScript 代码啥的。这些文件就好比餐厅的菜,菜量太大,做起来就费时间。文件体积大,下载的时间就长,页面加载速度也就慢了。
  • HTTP 请求多:每次向服务器请求一个文件,就相当于你去餐厅点一道菜。点的菜越多,服务员来回跑的次数就越多,上菜的时间也就越长。网页里 HTTP 请求多,就会增加额外的时间开销,导致页面加载变慢。
  • 浏览器渲染慢:浏览器渲染就像是厨师把菜摆到盘子里。要是厨师手脚慢,摆盘的时间长,你拿到菜的时间就晚。浏览器渲染页面的时候,如果代码写得不好,或者页面结构太复杂,渲染的时间就会变长,页面加载速度就慢了。

优化提升页面加载速度的方法

服务器方面
  • 选择好的服务器:就像选一家靠谱的餐厅,服务器的性能很重要。找一家速度快、稳定性好的服务器提供商,让服务器离你的目标用户近一些,这样数据传输的时间就会缩短。比如你面向国内用户,就选国内的服务器。
  • 使用 CDN(内容分发网络):CDN 就像是在全国各地开了好多餐厅分店。当用户访问你的网页时,CDN 会把网页里的文件从离用户最近的服务器上拿下来,这样下载速度就快了。很多网站都用 CDN 来加速图片、CSS、JavaScript 等静态资源的加载。
文件优化方面
  • 压缩文件:把图片、CSS 代码、JavaScript 代码都压缩一下,就像把菜压缩成压缩饼干,体积变小了,下载起来就快了。有很多专门的工具可以用来压缩文件,比如 ImageOptim 可以压缩图片,UglifyJS 可以压缩 JavaScript 代码。
  • 图片优化:选对图片格式很重要。像 JPEG 适合色彩丰富的照片,PNG 适合有透明效果的图片,SVG 适合图标。而且图片大小要合适,别用太大的图片。还可以用响应式图片,根据用户设备的屏幕大小,显示不同尺寸的图片。
  • 代码精简:把 CSS 和 JavaScript 代码里没用的部分删掉,就像把菜里的配菜挑出去,只留精华。代码越精简,浏览器解析和执行的速度就越快。
减少 HTTP 请求方面
  • 合并文件:把多个 CSS 文件合并成一个,多个 JavaScript 文件也合并成一个。就像把好几道菜拼成一个大拼盘,这样服务员只需要跑一趟就能把菜上齐了。浏览器只需要下载一次文件,而不是下载好几次,加载速度就快了。
  • 雪碧图:把多个小图标合并成一张大图片,就像把好多小零件拼成一个大零件。然后通过 CSS 来控制显示哪一部分图标。这样浏览器只需要下载一张图片,而不是下载好多张小图标,减少了 HTTP 请求的次数。
浏览器渲染方面
  • 优化 HTML 结构:HTML 结构要简单清晰,就像餐厅的菜单要一目了然。用 HTML5 的语义化标签,像 <header><nav><main><article><footer> 等,让浏览器更容易理解网页的结构,渲染速度就快了。
  • CSS 和 JavaScript 加载顺序:把重要的 CSS 代码放在 HTML 文件的 <head> 标签里,让浏览器能尽快拿到并渲染样式;把 JavaScript 代码放在 HTML 文件的底部,避免它阻塞页面的渲染。就像先把主食端上桌,再上甜品。
其他方面
  • 懒加载:图片和组件懒加载就像餐厅里的菜,等你想吃的时候再给你上。网页里的图片和组件,等用户滚动到能看到它们的位置时,再去下载和渲染,这样可以节省带宽和时间,加快页面的初始加载速度。
  • 缓存机制:浏览器有个缓存功能,就像餐厅会记住你上次点的菜。当你第一次访问一个网页时,浏览器会把网页里的一些文件存起来。下次你再访问这个网页时,浏览器会先看看有没有存这些文件,如果有,就直接用,不用再从网上下载了,加载速度就快了。

有哪些方法可以优化 CSS 和 JavaScript 代码,提高页面加载速度?

下面为你详细介绍优化 CSS 和 JavaScript 代码以提高页面加载速度的方法:

CSS 代码优化

1. 压缩与合并文件
  • 压缩:CSS 文件里存在大量空格、换行符和注释,这些对浏览器渲染页面并无实际作用,却会增加文件体积。使用工具(如 cssnano)进行压缩,能去除这些冗余内容,让代码更紧凑。例如,将原本带有大量空格和换行的代码:
body {font - size: 16px;line - height: 1.5;
}

压缩后变为:body{font-size:16px;line-height:1.5},文件体积减小,下载速度加快。

  • 合并:如果网页引入多个 CSS 文件,浏览器需要多次请求,增加了加载时间。把多个 CSS 文件合并成一个,可减少 HTTP 请求次数。比如将 style1.cssstyle2.css 合并成 combined.css,浏览器只需发起一次请求。
2. 减少选择器复杂度
  • 复杂的 CSS 选择器(如多层嵌套、使用过多伪类和通配符)会增加浏览器解析样式的难度和时间。尽量使用简单的选择器,如 ID 选择器、类选择器。例如,避免使用 body div ul li a 这样的长选择器,可给 a 标签添加类名,直接使用 .my - link 来选择。
3. 避免使用内联样式
  • 内联样式会让 HTML 文件变得臃肿,且无法被浏览器缓存。将样式统一写在 CSS 文件中,便于管理和复用,同时可利用浏览器缓存机制,提高加载速度。
4. 按需加载 CSS
  • 对于一些不常用的页面或特定功能的 CSS,可以采用按需加载的方式。例如,在用户点击某个按钮展开特定区域时,再动态加载该区域所需的 CSS 文件。可以使用 JavaScript 来实现动态加载:
const link = document.createElement('link');
link.rel = 'stylesheet';
link.href = 'specific - style.css';
document.head.appendChild(link);
5. 使用媒体查询优化响应式设计
  • 在进行响应式设计时,使用媒体查询可以根据不同设备的屏幕尺寸和特性加载不同的 CSS 规则。避免在所有设备上加载大量不必要的样式,减少文件体积。例如:
@media (max - width: 768px) {/* 针对小屏幕设备的样式 */body {font - size: 14px;}
}

JavaScript 代码优化

1. 压缩与合并文件
  • 压缩:和 CSS 类似,JavaScript 文件中的空格、注释和不必要的换行也会增加文件大小。使用工具(如 UglifyJS)压缩代码,去除冗余内容,还能缩短变量名。例如,将 function calculateSum(a, b) { return a + b; } 压缩后可能变为 function c(a,b){return a + b}
  • 合并:将多个 JavaScript 文件合并成一个,减少 HTTP 请求。不过要注意合并文件的顺序,确保依赖关系正确。
2. 避免全局变量
  • 全局变量会增加命名冲突的风险,并且一直占用内存,影响性能。尽量使用局部变量,将代码封装在函数或模块中,减少全局作用域的污染。例如:
function myFunction() {const localVar = 'This is a local variable';// 局部变量只在函数内部有效
}
3. 事件委托
  • 当需要为多个元素绑定相同事件时,使用事件委托可以减少事件处理程序的数量。将事件绑定到它们的共同父元素上,利用事件冒泡机制,在父元素上处理事件。例如,为一个列表中的所有列表项添加点击事件:
<ul id="myList"><li>Item 1</li><li>Item 2</li><li>Item 3</li>
</ul>
<script>const list = document.getElementById('myList');list.addEventListener('click', function (event) {if (event.target.tagName === 'LI') {// 处理点击事件}});
</script>
4. 防抖和节流
  • 防抖(Debounce):当用户频繁触发某个事件(如搜索框输入、窗口缩放)时,防抖可以让事件处理函数在用户停止操作一段时间后才执行,避免不必要的计算和请求。例如:
function debounce(func, delay) {let timer;return function () {const context = this;const args = arguments;clearTimeout(timer);timer = setTimeout(() => {func.apply(context, args);}, delay);};
}const input = document.getElementById('searchInput');
input.addEventListener('input', debounce(function () {// 处理输入事件
}, 300));
  • 节流(Throttle):节流是指在一定时间内,只执行一次事件处理函数。适用于一些高频触发的事件,如滚动加载。例如:
function throttle(func, limit) {let inThrottle;return function () {const context = this;const args = arguments;if (!inThrottle) {func.apply(context, args);inThrottle = true;setTimeout(() => inThrottle = false, limit);}};
}window.addEventListener('scroll', throttle(function () {// 处理滚动事件
}, 200));
5. 异步加载和懒加载
  • 异步加载:使用 asyncdefer 属性来异步加载 JavaScript 文件。async 属性会使脚本在下载时不会阻塞页面渲染,下载完成后立即执行;defer 属性会使脚本在下载时不阻塞页面渲染,并且会在文档解析完成后按顺序执行。例如:
<script async src="script.js"></script>
<script defer src="script2.js"></script>
  • 懒加载:对于一些不立即需要的 JavaScript 代码,可以采用懒加载的方式。例如,在用户点击某个按钮时,再动态加载对应的 JavaScript 模块:
const button = document.getElementById('myButton');
button.addEventListener('click', async () => {const { myFunction } = await import('./module.js');myFunction();
});

相关文章:

大白话页面加载速度,如何优化提升?

大白话页面加载速度&#xff0c;如何优化提升&#xff1f; 咱来好好唠唠页面加载速度这事儿&#xff0c;再说说怎么把它提上去。 页面加载速度是咋回事儿 页面加载速度啊&#xff0c;就好比你去餐厅吃饭&#xff0c;从你坐下点餐到饭菜端上桌的时间。在网页里&#xff0c;就…...

PyCharm 环境配置精髓:打造高效 Python 开发的基石

PyCharm 环境配置精髓:打造高效 Python 开发的基石 在现代软件开发的浪潮中,Python 语言以其简洁、高效和强大的生态系统,成为了众多开发者和企业的首选。而 PyCharm,作为 JetBrains 倾力打造的专业 Python IDE,更是凭借其智能的代码辅助、强大的调试功能和丰富的插件生态…...

通过百度构建一个智能体

通过百度构建一个智能体 直接可用,我不吝啬算力 首先部署一个模型,我们选用deepseek14 构建智能体思考步骤,甚至多智能体; from openai import OpenAIclass Agent:def __init__(self, api_key, base_url, model...

【Maui】自定义统一色彩样式

文章目录 前言一、问题描述二、解决方案三、软件开发&#xff08;源码&#xff09;3.1 消息扩展库3.2 样式的使用 四、项目展示 前言 .NET 多平台应用 UI (.NET MAUI) 是一个跨平台框架&#xff0c;用于使用 C# 和 XAML 创建本机移动和桌面应用。 使用 .NET MAUI&#xff0c;可…...

Swan 表达式 - 选择表达式

ANSYS Swan 表达式支持选择(selection)表达式 case, if/then/else。选择表达式根据特定的条件选择不同的分支流。 if/then/else 表达式 if/then/else 表达式的文法如下 if expr then expr else expr 其中&#xff0c;首个expr 的布尔表达式&#xff0c;若其为 true, 则返回 …...

关于深度学习的一份介绍

在这篇文章中&#xff0c;我将介绍有关深度学习的东西&#xff0c;主要是它与神经网络的关系、目前主要的网络有哪些&#xff0c;以及加深神经网络的意义等。 一、联系 在之前的文章中&#xff0c;我曾介绍过神经网络&#xff0c;而所谓的神经网络其实就是深度学习的一种架构…...

JAVA安全—手搓内存马

前言 最近在学这个内存马&#xff0c;就做一个记录&#xff0c;说实话这个内存马还是有点难度的。 什么是内存马 首先什么是内存马呢&#xff0c;顾名思义就是把木马打进内存中。传统的webshell一旦把文件删除就断开连接了&#xff0c;而Java内存马则不同&#xff0c;它将恶…...

SpringMVC(2)传递JSON、 从url中获取参数、上传文件、cookie 、session

一。//传递JSON RequestMapping("/r7")//RequestBody请求 public String r7(RequestBody UserInto user){ return "接收&#xff1a;"user.toString(); } 也可以&#xff1a; 二. //从url中获取参数 RequestMapping("/article/{t}/{articId}&qu…...

unity和unity hub关系

unity和unity hub关系 Unity和Unity Hub是紧密相关但功能不同的两个软件,以下是它们的关系说明: Unity 定义:是一款专业的实时3D开发平台,广泛用于创建各种类型的3D和2D互动内容,如视频游戏、建筑可视化、汽车设计展示、虚拟现实(VR)和增强现实(AR)应用等。功能:提供…...

机器学习:监督学习、无监督学习和强化学习

机器学习&#xff08;Machine Learning, ML&#xff09;是人工智能&#xff08;AI&#xff09;的一个分支&#xff0c;它使计算机能够从数据中学习&#xff0c;并在没有明确编程的情况下执行任务。机器学习的核心思想是使用算法分析数据&#xff0c;识别模式&#xff0c;并做出…...

DeepSeek-V3:AI语言模型的高效训练与推理之路

参考&#xff1a;【论文学习】DeepSeek-V3 全文翻译 在人工智能领域&#xff0c;语言模型的发展日新月异。从早期的简单模型到如今拥有数千亿参数的巨无霸模型&#xff0c;技术的进步令人瞩目。然而&#xff0c;随着模型规模的不断扩大&#xff0c;训练成本和推理效率成为了摆在…...

计算机毕设-基于springboot的社团管理系统的设计与实现(附源码+lw+ppt+开题报告)

博主介绍&#xff1a;✌多个项目实战经验、多个大型网购商城开发经验、在某机构指导学员上千名、专注于本行业领域✌ 技术范围&#xff1a;Java实战项目、Python实战项目、微信小程序/安卓实战项目、爬虫大数据实战项目、Nodejs实战项目、PHP实战项目、.NET实战项目、Golang实战…...

[IP] DDR_FIFO(DDR3 用户FIFO接口)

IP(DDR_FIFO)将DDR3 IP的用户侧复杂接口修改为简易的FIFO接口&#xff0c;用户侧更加简易例化使用MIG 核 IP介绍 c0_xx (连接DDR app接口) 此IP 仅需根据MIG配置进行有限修改&#xff0c;即可使用&#xff01; 关于IP详细使用说明&#xff0c;参考IP datasheet&#xff01; 示…...

第 11 章:当代定价问题总结

本章重点讨论了商品化&#xff08;Commoditization&#xff09;、折扣对利润的影响、价格战&#xff08;Price Wars&#xff09;及超级竞争&#xff08;Hypercompetition&#xff09;&#xff0c;并提供了相应的应对策略。 1. 商品化&#xff08;Commoditization&#xff09; …...

基于ssm的校园跑腿管理系统+vue

作者主页&#xff1a;舒克日记 简介&#xff1a;Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 系统共有管理员、用户两个角色 管理员主要的功能用户信息管理、任务信息管理、任务类型管理、接单信息管理、公告信息管理、投诉信息管理、公告类型管…...

36. Spring Boot 2.1.3.RELEASE 中实现监控信息可视化并添加邮件报警功能

1. 创建 Spring Boot Admin Server 项目 1.1 添加依赖 在 pom.xml 中添加 Spring Boot Admin Server 和邮件相关依赖&#xff1a; <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-w…...

C# WinForm程序中如何调试dll接口

公司的SF系统是自主开发的。不同的机种会有不同数据记录保存的需求&#xff0c;尤其是客户SQE更是各种奇思妙想......于是做了一个接口&#xff0c;实践之下效果还不错呢。 每每总是忘记怎么调试接口&#xff0c;特记录下备查。首先要将&#xff0c; 1 DLL项目与WinForms项目…...

SslConnection::SslConnection()详解

一、&#x1f50d; SslConnection::SslConnection() 详解 这个构造函数的主要作用是&#xff1a; 创建 SSL 对象创建 BIO&#xff08;I/O 缓冲区&#xff09;初始化 SSL 服务器模式绑定回调函数&#xff08;onRead() 处理接收数据&#xff09; &#x1f4cc; 1. 初始化 SSL 相…...

I2C驱动(九) -- i2c_adapter控制器驱动框架编写

相关文章 I2C驱动(一) – I2C协议 I2C驱动(二) – SMBus协议 I2C驱动(三) – 驱动中的几个重要结构 I2C驱动(四) – I2C-Tools介绍 I2C驱动(五) – 通用驱动i2c-dev.c分析 I2C驱动(六) – I2C驱动程序模型 I2C驱动(七) – 编写I2C设备驱动之i2c_driver I2C驱动(八) – 编写I2C…...

计算机等级考试

一、计算机等级考试——标准评分 &#xff08;1&#xff09;选择题 &#xff08;2&#xff09;基本操作题 &#xff08;3&#xff09;上网题 &#xff08;4&#xff09;文字题 &#xff08;5&#xff09;表格题 &#xff08;6&#xff09;演示文稿 总分&#xff1a;97 满分&…...

cuda-12.4.0 devel docker 中源码安装 OpenAI triton

1&#xff0c;准备 docker 容器 下载docker image: $ sudo docker pull nvidia/cuda:12.6.2-devel-ubuntu20.04 创建容器&#xff1a; sudo docker run --gpus all -it --name cuda_LHL_01 -v /home/hongleili/ex_triton/tmp1:/root/ex_triton/tmp1 nvidia/cuda:12.6…...

软件测试中的BUG

文章目录 软件测试的生命周期BugBug 的概念描述 Bug 的要素案例Bug 级别Bug 的生命周期与开发产生争执怎么办&#xff1f;【高频面试题】先检查自身&#xff0c;Bug 是否描述的不清楚站在用户角度考虑并抛出问题Bug 的定级要有理有据提⾼自身技术和业务水平&#xff0c;做到不仅…...

【Uniapp-Vue3】开发userStore用户所需的相关操作

在项目根路径下创建的stores文件夹中创建user.js文件 并将以下内容复制到user.js中 import {ref} from "vue" import { defineStore } from pinia; const uniIdCo uniCloud.importObject("uni-id-co") const db uniCloud.database(); const usersTable…...

控制kinova机械臂沿给定的末端轨迹运动

一、背景 我们通过不同的方法规划出一条轨迹后&#xff0c;需要验证是否可以让机械臂执行&#xff0c;因此需要将生成的一个一个坐标点发给机械臂&#xff0c;下面记录一下控制kinova机械臂沿给定的末端轨迹运动的方法。 写在前面&#xff1a; a、重新创建了包含kinova官方ro…...

【计网】计算机网络概述

第一章 计算机网络概述 1.2 因特网概述1.2.1 网络、互联网和因特网1.2.2 因特网发展的三个阶段1.2.3 因特网的标准化工作1.2.4 因特网的组成 1.3 三种交换方式1.3.1 电路交换1.3.2 分组交换1.3.3 报文交换1.3.4 三种交换的对比 1.4 计网的定义与分类1.4.1 定义1.4.2 分类 1.5 计…...

docker和containerd从TLS harbor拉取镜像

私有镜像仓库配置了自签名证书&#xff0c;https访问&#xff0c;好处是不需要处理免费证书和付费证书带来的证书文件变更&#xff0c;证书文件变更后需要重启服务&#xff0c;自签名证书需要将一套客户端证书存放在/etc/docker/cert.d目录下&#xff0c;或者/etc/containerd/c…...

1-kafka单机环境搭建

本文介绍kafka单机环境的搭建及可视化环境配置&#xff0c;虽然没有java代码&#xff0c;但是麻雀虽小五脏俱全&#xff0c;让大家在整体感官上对kafka有个认识。在文章的最后&#xff0c;我介绍了几个重要的配置参数&#xff0c;供大家参考。 0、环境 kafka&#xff1a;2.8.…...

怎么进行mysql的优化?

MySQL 的优化是一个系统性的工作&#xff0c;涉及多个层面&#xff0c;包括查询优化、索引优化、配置优化、架构优化等。以下是一些常见的 MySQL 优化方法&#xff1a; 查询优化 避免全表扫描&#xff1a;确保查询能够使用索引&#xff0c;避免 SELECT *&#xff0c;只选择需要…...

yolov8,yolo11,yolo12 服务器训练到部署全流程 笔记

正在进行中&#xff0c;随时更新 一. Anaconda配置 1.安装anaconda (1)下载.sh文件 Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror (2)scp到服务器后&#xff0c;运行安装包 bash Anaconda3-2020.07-Linux-x86_64.sh (3)安装anacond…...

基于fast-whisper模型的语音识别工具的设计与实现

目录 摘 要 第1章 绪 论 1.1 论文研究主要内容 1.1.1模型类型选择 1.1.2开发语言的选择 1.2 国内外现状 第2章 关键技术介绍 2.1 关键性开发技术的介绍 2.1.1 Faster-Whisper数据模型 2.1.2 Django 第3章 系统分析 3.1 构架概述 3.1.1 功能构架 3.1.2 模块需求描述 3.2 系统开…...

FFmpeg+vvenc实现H.266的视频编解码教程

Linux系统&#xff1a;FFmpegvvenc实现H.266的视频编解码教程&#xff08;视频压缩&#xff09; 关键网址 ffmpeg目前支持libvvenc&#xff0c;因此配置好libvvenc只会在一些make、sudo make install命令时遇到问题&#xff0c;例如默认安装或配置路径指定错误、ffmpeg版本、v…...

Hive-01之数仓、架构、数据类型、DDL、内外部表

一、主题 hive的核心概念hive与数据库的区别hive的架构原理hive的安装部署hive的交互式方式hive的数据类型hive的DDL语法操作 二、要点 1.数据仓库的基本概念 1.数据仓库的基本概念 英文名称为Data Warehouse&#xff0c;可简写为DW或DWH。数据仓库的目的是构建面向分析的…...

NIO是什么?它与传统的IO有什么区别?

NIO&#xff08;Non-blocking I/O&#xff09;是Java 1.4版本引入的一种新的I/O模型&#xff0c;旨在解决传统IO模型的局限性&#xff0c;提高网络通信和文件操作的效率。本文将详细解释NIO的概念、与传统IO的区别&#xff0c;并通过示例代码展示其实际应用。 一、NIO的概念 …...

模块七_面向对象

模块七_面向对象 模块六回顾:1.概述:拥有功能性代码的代码块将来干开发一个功能就应该对应一个方法2.方法的通用定义格式:修饰符 返回值类型 方法名(参数){方法体return 结果}a.修饰符:public staticb.返回值类型:方法最终返回的结果的数据类型c.方法名:给方法取的名字,见名知…...

初识uniApp

详细思考一下uniApp这个跨平台开发框架。首先&#xff0c;我对uniApp还不是很了解&#xff0c;所以需要从基本概念开始&#xff0c;逐步深入。 什么是uniApp&#xff1f; 我记得uniApp是基于Vue.js的&#xff0c;可能是一个用来开发多个平台的应用的框架。用户可能想了解它是什…...

蓝桥 发现环

0发现环 - 蓝桥云课 找到环 不过在最近一次维护网络时&#xff0c;管理员误操作使得某两台电脑之间增加了一条数据链接&#xff0c;于是网络中出现了环路。环路上的电脑由于两两之间不再是只有一条路径&#xff0c;使得这些电脑上的数据传输出现了BUG。 为了恢复正常传输&am…...

Compose 手势处理,增进交互体验

Compose 手势处理&#xff0c;增进交互体验 概述常用手势处理Modifierclickable()combinedClickable()draggable()swipeable()transformable()scrollable()nestedScrollNestedScrollConnectionNestedScrollDispatcher 定制手势处理使用 PointerInput ModifierPointerInputScope…...

【愚公系列】《Python网络爬虫从入门到精通》036-DataFrame日期数据处理

标题详情作者简介愚公搬代码头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,亚马逊技领云博主,51CTO博客专家等。近期荣誉2022年度…...

FastAdmin 与其他后台框架的对比分析

FastAdmin 与其他后台框架的对比分析 引言 在现代Web开发中&#xff0c;后台管理系统是支持各种应用程序的核心部分。随着需求的多样化&#xff0c;许多后台框架应运而生。本文将对FastAdmin与其他常见后台框架&#xff08;如Django Admin、Laravel Nova、AdminLTE&#xff0…...

自学微信小程序的第六天

DAY6 1、使用录音API首先需要通过wx.getRecorderManager()方法获取到一个RecorderManager实例,该实例是一个全局唯一的录音管理器,用于实现录音功能。 表32:RecorderManager实例的常用方法 方法名称 说明 start() 开始录音 pause() 暂停录音 resume() 继续录音 stop() 停止…...

KTV点歌系统

收藏关注不迷路&#xff01;&#xff01; &#x1f31f;文末获取源码数据库&#x1f31f; 感兴趣的可以先收藏起来&#xff0c;还有大家在毕设选题&#xff08;免费咨询指导选题&#xff09;&#xff0c;项目以及论文编写等相关问题都可以给我留言咨询&#xff0c;希望帮助更多…...

(上)基于机器学习的图像识别——遥感图像分类(LeNet-5;AlexNet;VGGNet;GoogLeNet;ResNet)

遥感图像识别&#xff1a; 专业词汇&#xff1a; kernel&#xff1a;卷积 目录 遥感图像分类 1.1 LeNet-5 视频来源&#xff1a; 任务&#xff1a;使用什么网络实现遥感图像的分类 LeNet-5结构&#xff1a; 遥感图像分类 1.2 AlexNet&#xff08;冠军&#xff09; 视频…...

深入探索 STM32 微控制器:从基础到实践

一、引言 在当今的嵌入式系统领域&#xff0c;STM32 系列微控制器凭借其高性能、低功耗、丰富的外设以及广泛的应用场景&#xff0c;成为了众多开发者的首选。无论是在工业控制、智能家居、医疗设备&#xff0c;还是在消费电子等领域&#xff0c;STM32 都展现出了强大的生命力…...

windows下玩转vllm:在wsl下安装vllm

文章目录 前言安装wsl启动wsl的默认分发使用python部署vllm创建并激活虚拟环境直接说结论试错过程安装vllm简单测试一下,看看行不行附录,安装wsl安装ubuntu分发步骤 3: 设置用户和密码步骤 4: 更新系统步骤 5: 使用 WSL前言 当前,部署通义千问2.5-vl已经是一件箭在弦上,不…...

SGLang部署大模型

SGLang部署大模型 环境信息基础组件安装创建python虚拟环境安装python模块下载模型部署模型 显存需求较高&#xff0c; 本地4G显存0.5B都无法部署 支持多机多卡部署 支持GPU、CPU混合运行 支持运行格式pt,safetensors,npcache,dummy,gguf,bitsandbytes,layered 环境信息 机器01…...

Ubuntu 防火墙iptables和 ufw

文章目录 iptables 和 ufw 的区别Ubuntu 上使用 ufw 配置 iptables 和 ufw 的区别 iptables 和 ufw 是 Linux 系统中用于管理防火墙的工具&#xff0c;但它们的设计目标和使用方式有所不同。 iptables&#xff1a;功能强大&#xff0c;适合高级用户和复杂场景&#xff0c;但配…...

NAT 代理服务 内网穿透

&#x1f308; 个人主页&#xff1a;Zfox_ &#x1f525; 系列专栏&#xff1a;Linux 目录 一&#xff1a;&#x1f525; NAT 技术背景二&#xff1a;&#x1f525; NAT IP 转换过程三&#xff1a;&#x1f525; NAPT四&#xff1a;&#x1f525; 代理服务器&#x1f98b; 正向…...

C++20 Lambda表达式新特性:包扩展与初始化捕获的强强联合

文章目录 一、Lambda表达式的历史回顾二、C20 Lambda表达式的两大新特性&#xff08;一&#xff09;初始化捕获&#xff08;Init-Capture&#xff09;&#xff08;二&#xff09;包扩展&#xff08;Pack Expansion&#xff09; 三、结合使用初始化捕获与包扩展&#xff08;一&a…...

ES scroll=1m:表示快照的有效时间为1分钟。怎么理解

在Elasticsearch中&#xff0c;scroll1m 表示你创建的 scroll 上下文 的有效时间为 1分钟。这个参数控制了你可以在多长时间内继续使用这个 scroll_id 来获取更多的数据。 什么是 Scroll 上下文&#xff1f; 当你使用 scroll API 时&#xff0c;Elasticsearch 会为你的查询创…...

【IoU变体对比:WIOU、SIOU、EIOU、GIOU、CIOU】

IoU变体对比&#xff1a;WIOU、SIOU、EIOU、GIOU、CIOU 1. 基本概念与公式(1) GIOU (Generalized Intersection over Union)(2) CIOU (Complete Intersection over Union)(3) EIOU (Efficient Intersection over Union)(4) SIOU (Shape-Enhanced Intersection over Union)(5) W…...