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

处理 SQL Server 中的表锁问题

在 SQL Server 中,表锁是一个常见的问题,尤其是在并发访问和数据更新频繁的环境中。表锁会导致查询性能下降,甚至导致死锁和系统停滞。本文将详细介绍如何识别、分析和解决 SQL Server 中的表锁问题。

什么是表锁?

表锁是 SQL Server 用来管理并发访问的一种机制,确保多个事务在访问同一数据时不会互相干扰。表锁分为共享锁、排他锁和更新锁等类型。虽然锁机制可以保证数据的一致性,不当的锁策略可能会导致性能问题和异常等待。

识别表锁

首先需要识别哪些表和查询导致了锁。可以使用以下工具和命令:

  1. SQL Server Management Studio (SSMS)

    • 在 SSMS 中,使用“活动监视器”查看当前锁定情况。
    • 右键单击服务器实例,选择“活动监视器”,查看“进程”、“资源等待”等信息。
  2. 系统视图

    • 使用系统视图 sys.dm_tran_lockssys.dm_exec_requestssys.dm_os_waiting_tasks 识别锁和等待情况。
    SELECT request_session_id AS SPID,resource_type,resource_description,request_mode,request_status
    FROM sys.dm_tran_locks
    WHERE resource_type = 'OBJECT';
    
  3. SQL Server Profiler

    • 使用 SQL Server Profiler 捕获锁事件,如 Lock:AcquiredLock:Released
分析表锁

识别到锁之后,需要分析锁的原因和影响。

  1. 查看阻塞链

    • 使用 sys.dm_exec_requestssys.dm_os_waiting_tasks 查看阻塞链,找出导致阻塞的查询。
    SELECT blocking_session_id AS BlockingSPID,session_id AS BlockedSPID,wait_type,wait_resource
    FROM sys.dm_exec_requests
    WHERE blocking_session_id <> 0;
    
  2. 查看执行计划

    • 使用 sys.dm_exec_query_statssys.dm_exec_sql_text 查看导致锁的查询的执行计划。
    SELECT qs.sql_handle,qs.execution_count,qs.total_elapsed_time,qs.total_logical_reads,st.text
    FROM sys.dm_exec_query_stats qs
    CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) st
    WHERE qs.total_elapsed_time > 0;
    
示例
示例 1:大批量更新导致表锁
  1. 原始查询
UPDATE Orders
SET OrderStatus = 'Completed'
WHERE OrderDate < '2023-01-01';
  1. 问题分析
    这个查询会更新 Orders 表中所有 OrderDate 在 2023 年 1 月 1 日之前的记录。如果这些记录数量很大,SQL Server 可能会对整个表加锁,从而阻止其他事务访问该表。

  2. 优化方法
    可以使用分批处理来减少锁的范围和持有时间:

DECLARE @BatchSize INT = 1000;
WHILE EXISTS (SELECT 1 FROM Orders WHERE OrderDate < '2023-01-01')
BEGINUPDATE TOP (@BatchSize) OrdersSET OrderStatus = 'Completed'WHERE OrderDate < '2023-01-01';-- Optional: Add a delay to reduce contention furtherWAITFOR DELAY '00:00:01';
END
示例 2:缺乏索引导致表扫描
  1. 原始查询
SELECT *
FROM Customers
WHERE LastName = 'Smith';
  1. 问题分析
    如果 Customers 表的 LastName 列上没有索引,SQL Server 将进行表扫描,这会导致长时间的表锁。

  2. 优化方法
    LastName 列创建索引以提高查询性能并减少锁持有时间:

CREATE INDEX IX_Customers_LastName ON Customers(LastName);
示例 3:长时间的事务导致表锁
  1. 原始查询
BEGIN TRANSACTION;UPDATE Products
SET Price = Price * 1.1
WHERE CategoryID = 5;WAITFOR DELAY '00:05:00'; -- Simulate a long-running processCOMMIT TRANSACTION;
  1. 问题分析
    这个事务在更新 Products 表的价格后等待 5 分钟再提交。在此期间,Products 表上的锁将被持有,阻止其他事务更新该表。

  2. 优化方法
    尽量缩短事务的持续时间,避免在事务中执行长时间的操作:

BEGIN TRANSACTION;UPDATE Products
SET Price = Price * 1.1
WHERE CategoryID = 5;COMMIT TRANSACTION;-- Perform long-running process outside the transaction
WAITFOR DELAY '00:05:00';
示例 4:未使用合适的隔离级别导致表锁
  1. 原始查询
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;SELECT *
FROM Orders
WHERE OrderDate > '2023-01-01';
  1. 问题分析
    SERIALIZABLE 隔离级别会对 Orders 表加锁,直到事务结束。这是最高级别的隔离级别,通常会导致较长时间的锁。

  2. 优化方法
    根据业务需求选择合适的隔离级别,例如 READ COMMITTED SNAPSHOT,以减少锁争用:

ALTER DATABASE YourDatabase SET READ_COMMITTED_SNAPSHOT ON;-- Now use the default READ COMMITTED isolation level
SELECT *
FROM Orders
WHERE OrderDate > '2023-01-01';
示例 5:复杂查询导致表锁
  1. 原始查询
SELECT o.OrderID, c.CustomerName, p.ProductName
FROM Orders o
JOIN Customers c ON o.CustomerID = c.CustomerID
JOIN OrderDetails od ON o.OrderID = od.OrderID
JOIN Products p ON od.ProductID = p.ProductID
WHERE c.Country = 'USA' AND p.CategoryID = 5;
  1. 问题分析
    这个查询涉及多个表的连接,如果这些表没有适当的索引,SQL Server 可能会对这些表进行表扫描并加锁。

  2. 优化方法
    确保连接列和过滤列上有适当的索引:

CREATE INDEX IX_Customers_Country ON Customers(Country);
CREATE INDEX IX_Products_CategoryID ON Products(CategoryID);
CREATE INDEX IX_Orders_CustomerID ON Orders(CustomerID);
CREATE INDEX IX_OrderDetails_OrderID ON OrderDetails(OrderID);
CREATE INDEX IX_OrderDetails_ProductID ON OrderDetails(ProductID);
表锁问题

根据分析结果,解决表锁问题:

  1. 优化查询

    • 优化导致锁的查询,减少锁的持有时间。例如,添加索引、重写查询以提高效率。
    CREATE INDEX IX_Employees_EmployeeID ON Employees(EmployeeID);
    
  2. 使用行锁

    • 尽量使用行锁而不是表锁,减少锁的范围。可以使用 ROWLOCK 提示强制使用行锁。
    UPDATE Employees WITH (ROWLOCK)
    SET FirstName = 'John'
    WHERE EmployeeID = 1;
    
  3. 分批处理

    • 对大批量数据操作进行分批处理,减少单个事务的锁定时间。
    DECLARE @BatchSize INT = 1000;
    WHILE EXISTS (SELECT 1 FROM LargeTable)
    BEGINDELETE TOP (@BatchSize) FROM LargeTable;WAITFOR DELAY '00:00:01'; -- 等待1秒
    END
    
  4. 使用宽松的并发控制

    • 使用 READ COMMITTED SNAPSHOT 隔离级别,减少锁争用。
    ALTER DATABASE YourDatabase SET READ_COMMITTED_SNAPSHOT ON;
    
  5. 设置锁超时

    • 设置锁超时,避免长时间等待。
    SET LOCK_TIMEOUT 5000; -- 设置锁超时为5秒
    
  6. 死锁检测

    • 配置 SQL Server 的死锁检测和报告,及时处理死锁。
    DBCC TRACEON(1222, -1); -- 启用死锁检测
    

结论

表锁是 SQL Server 中影响性能和并发性的重要问题。识别、分析和解决锁问题,可以显著提高数据库的性能和稳定性。本文提供了一些常见的查询和执行计划示例,这些示例可能会导致表锁,并提供了相应的优化方法。

相关文章:

处理 SQL Server 中的表锁问题

在 SQL Server 中&#xff0c;表锁是一个常见的问题&#xff0c;尤其是在并发访问和数据更新频繁的环境中。表锁会导致查询性能下降&#xff0c;甚至导致死锁和系统停滞。本文将详细介绍如何识别、分析和解决 SQL Server 中的表锁问题。 什么是表锁&#xff1f; 表锁是 SQL S…...

【Mysql进阶知识】Mysql 程序的介绍、选项在命令行配置文件的使用、选项在配置文件中的语法

目录 一、程序介绍 二、mysqld--mysql服务器介绍 三、mysql - MySQL 命令行客户端 3.1 客户端介绍 3.2 mysql 客户端选项 指定选项的方式 mysql 客户端命令常用选项 在命令行中使用选项 选项(配置)文件 使用方法 选项文件位置及加载顺序 选项文件语法 使用举例&am…...

代码随想录算法训练营总结

本人是一名普普通通的计算机专业的毕业生&#xff0c;在大学学数据结构和算法就感觉非常难&#xff0c;到毕业也没刷过几道题&#xff0c;所幸后来入职的公司也没有考察算法相关的内容。到现在已经工作两年多了&#xff0c;看到过许多聊面试聊算法的文章&#xff0c;也接触到一…...

二进制/源码编译安装mysql 8.0

二进制方式&#xff1a; 1.下载或上传安装包至设备&#xff1a; 2.创建组与用户&#xff1a; [rootopenEuler-1 ~]# groupadd mysql [rootopenEuler-1 ~]# useradd -r -g mysql -s /bin/false mysql 3.解压安装包&#xff1a; tar xf mysql-8.0.36-linux-glibc2.12-x86_64.ta…...

AI 编程工具—Cursor进阶使用 阅读开源项目

AI 编程工具—Cursor进阶使用 阅读开源项目 首先我们打开一个最近很火的项目browser-use ,直接从github 上克隆即可 索引整个代码库 这里我们使用@Codebase 这个选项会索引这个代码库,然后我们再选上这个项目的README.md 文件开始提问 @Codebase @README.md 这个项目是用…...

掌握C语言内存布局:数据存储的智慧之旅

大家好&#xff0c;这里是小编的博客频道 小编的博客&#xff1a;就爱学编程 很高兴在CSDN这个大家庭与大家相识&#xff0c;希望能在这里与大家共同进步&#xff0c;共同收获更好的自己&#xff01;&#xff01;&#xff01; 目录 引言正文一、数据类型介绍1.内置类型2.自定义…...

一键化配置java环境

一键化配置java环境 下载javaPathConfig 打开&#xff0c;将java的jdk路径写进去 例如我的路径就是 C:\Program Files\Java\jdk-1.8点击确认设置即可...

【I/O编程】UNIX文件基础

IO编程的本质是通过 API 操作 文件。 什么是 IO I - Input 输入O - Output 输出 这里的输入和输出都是站在应用&#xff08;运行中的程序&#xff09;的角度。外部特指文件。 这里的文件是泛指&#xff0c;并不是只表示存在存盘中的常规文件。还有设备、套接字、管道、链接…...

leetcode 面试经典 150 题:汇总区间

链接汇总区间题序号228题型数组解法一次遍历法难度简单熟练度✅✅✅ 题目 给定一个 无重复元素 的 有序 整数数组 nums 。 返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表 。也就是说&#xff0c;nums 的每个元素都恰好被某个区间范围所覆盖&#xff0c;并且不存在属…...

联想Android面试题及参考答案

请介绍一下 Android 的架构,并谈谈对 Linux 的了解。 Android 架构主要分为四层,从下往上依次是 Linux 内核层、系统运行库层、应用框架层和应用层。 Linux 内核层是 Android 系统的基础。它提供了底层的硬件驱动程序,包括显示驱动、摄像头驱动、音频驱动等多种硬件设备的驱…...

redux 结合 @reduxjs/toolkit 的使用

1&#xff0c;使用步骤 使用React Toolkit 创建 counterStore&#xff08;store目录下&#xff09; --> 为React注入store&#xff08;src下面的index&#xff09; --> React组件使用store中的数据&#xff08;组件&#xff09; 2&#xff0c;例如下面有一个简单加减的…...

【鱼皮大佬API开放平台项目】Spring Cloud Gateway HTTPS 配置问题解决方案总结

问题背景 项目架构为前后端分离的微服务架构&#xff1a; 前端部署在 8000 端口API 网关部署在 9000 端口后端服务包括&#xff1a; api-backend (9001端口)api-interface (9002端口) 初始状态&#xff1a; 前端已配置 HTTPS&#xff08;端口 8000&#xff09;后端服务未配…...

PHP反序列化

一、PHP面向对象的基础知识 基本概念 1、面向过程VS面向对象 以做饭为例&#xff0c;面向过程是自己从原材料到成品全部自己做&#xff0c;面向对象相当于去饭店&#xff0c;点菜&#xff0c;等待结果&#xff08;上菜&#xff09;。 2、类的定义 类是定义了一件事物的抽象…...

6、原来可以这样理解C语言_函数(7/8)嵌套调⽤和链式访问

目录 七、嵌套调⽤和链式访问 七、&#xff08;1&#xff09;、嵌套调⽤ 七、&#xff08;2&#xff09;、链式访问 七、嵌套调⽤和链式访问 七、&#xff08;1&#xff09;、嵌套调⽤ 嵌套调⽤就是函数之间的互相调⽤&#xff0c;每个函数就⾏⼀个乐⾼零件&#xff0c;正是因…...

安装 Jenkins 后无法访问用户名或密码且忘记这些凭证怎么办?

Jenkins 是一款功能强大的自动化服务器&#xff0c;在持续集成与交付&#xff08;CI/CD&#xff09;领域应用广泛。不过&#xff0c;用户在使用过程中&#xff0c;尤其是首次接触该系统或系统重启后&#xff0c;常常会遇到登录方面的问题。要是 Jenkins 突然要求输入用户名和密…...

VIVADO FIFO (同步和异步) IP 核详细使用配置步骤

VIVADO FIFO (同步和异步) IP 核详细使用配置步骤 目录 前言 一、同步FIFO的使用 1、配置 2、仿真 二、异步FIFO的使用 1、配置 2、仿真 前言 在系统设计中&#xff0c;利用FIFO&#xff08;first in first out&#xff09;进行数据处理是再普遍不过的应用了&#xff0c…...

49_Lua调试

Lua提供了debug库用于创建自定义调试器,尽管Lua本身没有内置的调试器1。这个库允许开发者在程序运行时检查和控制执行流程,这对于开发过程中的错误查找和修复非常有用。 1.Debug库概述 debug库提供的函数可以分为两类:自省函数(introspection functions)和钩子函数(hoo…...

SR-BE 笔记和实验

一、笔记&#xff1a; SR不需要mpls&#xff0c;但要配置 mpls lsr-id 不需要MPLS LDP分标签&#xff0c;但仍然需要依赖IGP来分标签 fish—TE问题 SPF&#xff1a;Shortest Path First 最短路径算法 CSPF&#xff1a;Constrained SPF 受约束的SPF算法 BGP-LS&#xff1a; SR…...

实力认证 | 海云安入选《信创安全产品及服务购买决策参考》

近日&#xff0c;国内知名安全调研机构GoUpSec发布了2024年中国网络安全行业《信创安全产品及服务购买决策参考》&#xff0c;报告从产品特点、产品优势、成功案例、安全策略等维度对各厂商信创安全产品及服务进行调研了解。 海云安凭借AI大模型技术在信创安全领域中的创新应用…...

pytorch张量分块投影示例代码

张量的投影操作 背景 张量投影 是深度学习中常见的操作,将输入张量通过线性变换映射到另一个空间。例如: Y=W⋅X+b 其中: X: 输入张量(形状可能为 (B,M,K),即批量维度、序列维度、特征维度)。W: 权重矩阵((K,N),将 K 维投影到 N 维)。b: 偏置向量(可选,(N,))。Y:…...

Elasticsearch二次开发:实现实时定时同步同义词、近义词与停用词

Elasticsearch二次开发&#xff1a;实现实时定时同步同义词、近义词与停用词 引言 Elasticsearch&#xff08;ES&#xff09;作为开源搜索引擎的典范&#xff0c;以其强大的全文搜索、结构化搜索以及分析能力&#xff0c;在各个领域得到了广泛应用。在复杂的搜索场景中&#…...

Linux 常用文件查看命令

目录 cat 命令&#xff1a;连接与查看 more/less 命令&#xff1a;分页查看 tail 命令&#xff1a;实时追踪 cat 命令&#xff1a;连接与查看 基本功能&#xff1a;用于连接文件并打印到标准输出设备上&#xff0c;常用于查看文件内容。当有多个文件作为参数时&#xff0c;会…...

智能家居篇 一、Win10 VM虚拟机安装 Home Assistant 手把手教学

智能家居篇 一、Win10 VM虚拟机安装 Home Assistant 手把手教学 文章目录 [智能家居篇]( )一、Win10 VM虚拟机安装 Home Assistant 手把手教学 前言一.下载Vm版本的HomeAsistant安装包 二.打开Vmware选择新建虚拟机1.选择自定义高级2.选择16.x及以上3.选择稍后安装4.根据官网的…...

端口镜像和端口安全

✍作者&#xff1a;柒烨带你飞 &#x1f4aa;格言&#xff1a;生活的情况越艰难&#xff0c;我越感到自己更坚强&#xff1b;我这个人走得很慢&#xff0c;但我从不后退。 &#x1f4dc;系列专栏&#xff1a;网络安全从菜鸟到飞鸟的逆袭 目录 一&#xff0c;端口镜像二&#xf…...

打造更安全的Linux系统:玩转PAM配置文件

在Linux系统中&#xff0c;用户认证是确保系统安全的关键步骤。PAM&#xff08;可插拔认证模块&#xff09;为我们提供了一个非常灵活的框架&#xff0c;帮助我们管理各种服务的认证过程。其中&#xff0c;/etc/pam.d目录是PAM配置的核心部分&#xff0c;这里存放了每个服务所需…...

猫咪智商相当于人的几岁?

猫咪&#xff0c;这个神秘又高冷的物种&#xff0c;总能让我们又爱又恨。它们时而撒娇卖萌&#xff0c;时而独立自主&#xff0c;让人琢磨不透。那么&#xff0c;问题来了&#xff0c;猫咪的智商到底相当于人的几岁呢&#xff1f;今天&#xff0c;就来给大家好好揭秘一下喵星人…...

软件设计大致步骤

由于近期在做软件架构设计&#xff0c;这里总结下大致的设计流程 软件设计流程 1 首先要先写系统架构图&#xff0c;将该功能在整个系统的位置以及和大致的内部模块划分 2 然后写内部的结构图&#xff0c;讲内部的各个子系统&#xff0c;模块&#xff0c;组件之间的关系和调用…...

Elasticsearch入门学习

Elasticsearch是什么 Elasticsearch 是一个基于 Apache Lucene 构建的分布式搜索和分析引擎、可扩展的数据存储和矢量数据库。 它针对生产规模工作负载的速度和相关性进行了优化。 使用 Elasticsearch 近乎实时地搜索、索引、存储和分析各种形状和大小的数据。 特点 分布式&a…...

Mac安装配置使用nginx的一系列问题

brew安装nginx https://juejin.cn/post/6986190222241464350 使用brew安装nginx&#xff0c;如下命令所示&#xff1a; brew install nginx 如下图所示&#xff1a; 2.查看nginx的配置信息&#xff0c;如下命令&#xff1a; brew info nginxFrom:xxx 这样的&#xff0c;是n…...

Elasticsearch Python 客户端是否与自由线程 Python 兼容?

作者&#xff1a;来自 Elastic Quentin_Pradet 在这篇文章中&#xff0c;我们将进行一些实验&#xff0c;看看 Python Elasticsearch 客户端是否与新的 Python 3.13 自由线程&#xff08;free-threading&#xff09;版本兼容&#xff0c;其中 GIL 已被删除。 介绍 但首先&…...

ROS2 的所有控制台命令

以下是 ROS2 的控制台命令&#xff1a; 编译 colcon是ros的构建工具 sudo apt install python3-colcon-common-extensions 如只编译 turn_robot colcon build --packages-select turn_robot 编译全部功能包 colcon build source source /home/sukai/turn_robot/install…...

深入理解 Entity、VO、QO、DTO 的区别及其在 MVC 架构中的应用

文章背景 在现代软件开发中&#xff0c;我们经常会接触到各种数据结构的概念&#xff0c;比如 Entity、VO&#xff08;Value Object&#xff09;、QO&#xff08;Query Object&#xff09;、DTO&#xff08;Data Transfer Object&#xff09;等。这些概念尽管看似相似&#xff…...

角色认知培训

课程记录 需求传达的时候先强调重点&#xff0c;理清需求的过程中&#xff0c;大家一起分析 一开始单线程&#xff0c;总结复盘&#xff0c;提升效率&#xff0c;变成多线程 心态 2、复盘能力&#xff0c;每次优化策略 优化 团结、执行、 3、 头马的理解&#xff1f; 小…...

记录一次微信小程序使用云能力开发的过程

对于开发微信小程序云开发不知从何起的同学们&#xff0c;可以当作一次参考。虽说官方有文档&#xff0c;有模板示例&#xff0c;但是这些都是片段或者完整的结果展示。对于初学或者开发经验较少的同学们&#xff0c;可能不知先从那里入手进行第一步的开发。下面解析下构建微信…...

vim将一行行尾倒数第三个字符替换成1

%s/\v(.)(.)(.)(.)$/1\2\3\4\v:very magic模式&#xff0c;可以省略转义符 &#xff08;.&#xff09;:圆括号的分组功能&#xff0c;将括号匹配内容放到第一个寄存器里面&#xff0c;第二个括号匹配内容放到第二个寄存器里面。 $:匹配行尾字符 \2:第二个括号匹配内容 \3:第三个…...

Kafka权威指南(第2版)读书笔记

目录 Kafka生产者——向Kafka写入数据生产者概览创建Kafka生产者bootstrap.serverskey.serializervalue.serializer 发送消息到Kafka同步发送消息异步发送消息 生产者配置client.idacks消息传递时间max.block.msdelivery.timeout.msrequest.timeout.msretries 和retry.backoff.…...

Yolov8 目标检测剪枝学习记录

最近在进行YOLOv8系列的轻量化&#xff0c;目前在网络结构方面的优化已经接近极限了&#xff0c;所以想要学习一下模型剪枝是否能够进一步优化模型的性能 这里主要参考了torch-pruning的基本使用&#xff0c;v8模型剪枝&#xff0c;Jetson nano部署剪枝YOLOv8 下面只是记录一个…...

5G+工业互联网迈入规模化发展新阶段

百度安全验证 https://blog.csdn.net/qq_25467441/article/details/145036191?sharetypeblogdetail&sharerId145036191&sharereferPC&sharesourceqq_25467441&spm1011.2480.3001.8118 好看视频-轻松有收获 产业供给加速提升。国内主流模组厂商引领全球5G模组…...

WOA-Transformer鲸鱼算法优化编码器时间序列预测(Matlab实现)

WOA-Transformer鲸鱼算法优化编码器时间序列预测&#xff08;Matlab实现&#xff09; 目录 WOA-Transformer鲸鱼算法优化编码器时间序列预测&#xff08;Matlab实现&#xff09;预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现WOA-Transformer鲸鱼算法优化编…...

「刘一哥GIS」系列专栏《GRASS GIS零基础入门实验教程(配套案例数据)》专栏上线了

「刘一哥GIS」系列专栏《GRASS GIS零基础入门实验教程》全新上线了&#xff0c;欢迎广大GISer朋友关注&#xff0c;一起探索GIS奥秘&#xff0c;分享GIS价值&#xff01; 本专栏以实战案例的形式&#xff0c;深入浅出地介绍了GRASS GIS的基本使用方法&#xff0c;用一个个实例讲…...

Spring boot面试题---- Spring boot项目运行原理

1.启动流程概述 Spring Boot 的启动是从一个带有main方法的主类开始的。这个主类通常会有一个@SpringBootApplication注解。这个注解是一个组合注解,它包含了@Configuration、@EnableAutoConfiguration和@ComponentScan。@Configuration注解表明这个类是一个配置类,它可以定义…...

HTML基础与实践

目录 HTML 结构 认识 HTML 标签 HTML 文件基本结构 标签层次结构 快速生成代码框架 HTML 常见标签 注释标签 标题标签: h1-h6 段落标签: p 换行标签: br 格式化标签 图片标签: img 超链接标签: a ​编辑链接的几种形式: 表格标签 基本使用 合并单元格 …...

码编译安装httpd 2.4,测试

下载链接&#xff1a;https://dlcdn.apache.org/httpd/httpd-2.4.62.tar.gz [rootopenEuler-1 ~]# yum install gcc gcc-c make -y [rootopenEuler-1 ~]# ll /root total 9648 -rw-------. 1 root root 920 Jan 10 17:15 anaconda-ks.cfg -rw-r--r-- 1 root root 9872432…...

计算机网络 (45)动态主机配置协议DHCP

前言 计算机网络中的动态主机配置协议&#xff08;DHCP&#xff0c;Dynamic Host Configuration Protocol&#xff09;是一种网络管理协议&#xff0c;主要用于自动分配IP地址和其他网络配置参数给连接到网络的设备。 一、基本概念 定义&#xff1a;DHCP是一种网络协议&#xf…...

赛灵思(Xilinx)公司Artix-7系列FPGA

苦难从不值得歌颂&#xff0c;在苦难中萃取的坚韧才值得珍视&#xff1b; 痛苦同样不必美化&#xff0c;从痛苦中开掘出希望才是壮举。 没有人是绝对意义的主角&#xff0c; 但每个人又都是自己生活剧本里的英雄。滑雪&#xff0c;是姿态优雅的“贴地飞行”&#xff0c;也有着成…...

【计算机体系结构、微架构性能分析】core 与 uncore 分别是哪一些部分?区分 core 和 uncore

在计算机体系结构中&#xff0c;Core 和 Uncore 是描述处理器内部架构的两个重要概念&#xff0c;尤其在多核处理器中更为常见。 1. Core&#xff08;核心&#xff09; Core 指的是处理器中的计算核心&#xff0c;是执行指令和处理数据的基本单元。每个核心都包含独立的执行单…...

基于 K-Means 聚类分析实现人脸照片的快速分类

注:本文在创作过程中得到了 ChatGPT、DeepSeek、Kimi 的智能辅助支持,由作者本人完成最终审阅。 在 “视频是不能 P 的” 系列文章中,博主曾先后分享过人脸检测、人脸识别等相关主题的内容。今天,博主想和大家讨论的是人脸分类问题。你是否曾在人群中认错人,或是盯着熟人的…...

Ubuntu更改apache的服务端口

1.介绍 承接上文&#xff0c;上文介绍了如何利用apache快速部署自己的网页&#xff0c;直接访问localhost就能打开网页的界面&#xff0c;这里其实是直接用了Ubuntu的80端口访问&#xff0c;如果我想换一个端口访问呢&#xff1f;应该怎么实现&#xff1f; 这一篇文章就来教你&…...

9.7 visual studio 搭建yolov10的onnx的预测(c++)

1.环境配置 在进行onnx预测前&#xff0c;需要搭建的环境如下: 1.opencv环境的配置&#xff0c;可参考博客:9.2 c搭建opencv环境-CSDN博客 2.libtorch环境的配置&#xff0c;可参考博客&#xff1a;9.4 visualStudio 2022 配置 cuda 和 torch (c)-CSDN博客 3.cuda环境的配置…...

“飞的”点外卖,科技新潮流来袭

一、开篇引入 上个周末&#xff0c;阳光正好&#xff0c;我带着孩子去公园游玩。公园里绿草如茵&#xff0c;花朵绽放&#xff0c;孩子们在草地上嬉笑奔跑&#xff0c;好不快活。玩累了&#xff0c;我们便在草坪上的帐篷里休息。 就在这时&#xff0c;天空中突然传来一阵嗡嗡…...