Redis集群模式详解
文章目录
- 引言
- 客户端命令
- CLUSTER MEET
- CLUSTER ADDSLOTS
- CLUSTER REPLICATE
- 1. 集群节点
- 1.1 集群数据结构
- clusterState结构
- clusterNode结构
- clusterLink结构
- 1.2 节点启动
- 2. 槽指派
- 2.1 记录节点的槽指派信息
- 2.2 传播节点的槽指派信息
- 2.3 记录集群所有槽的指派信息
- 3. 在集群中执行命令
- 3.1 计算键属于的槽
- 3.2 判断槽是否由当前节点负责
- 4. 重新分片
- 4.1 重新分片原理
- 4.2 ASK错误
- 4.3 ASKING命令
- 4.4 ASK错误与MOVED错误的区别
- 5. 复制与故障转移
- 5.1 主从节点
- 5.2 故障检测
- 5.3 故障转移
- 5.4 选举新的主节点
- 6. 集群消息
- 6.1 消息结构
- 7. Gossip协议
- 参考文献
引言
- Redis集群是Redis提供的分布式数据库方案(每个数据库保存一部分数据),集群通过分片来进行数据共享,并提供复制和故障转移功能
- 集群中的16384(2018*8个二进制位)个槽,可以分别指派给集群中的各个节点(一个槽只能指定给一个节点),每个节点都会记录哪些槽指派给了自己,而哪些槽又指派给了其他节点;
- 当节点接收到一个命令请求时,会先检查这个命令请求要处理的键所在的槽是否由自己负责,如果不是的话,节点将会向客户端返回一个
MOVE
错误,MOVE
错误携带的信息可以指引客户端转向正在负责相关槽的节点; slot_number(key)
方法用来计算键属于哪个槽,通过计算key的CRC-16
校验和,然后生成介于0到16383之间的整数值;
def slot_number(key):return CRC16(key) & 16383
- Redis集群在运行过程中,可以通过重新分片操作将任意数量已经指定给某个节点(源节点)的槽改为指派给另一个节点(目标节点);
- Redis集群中的节点可以分为主节点和从节点,多个主节点分配处理集群中的槽,主节点下的从节点复制主节点的操作,在主节点下线时,可以代替主节点成为新的主节点,处理命令请求;
- 集群中的节点通过发送和接收消息来进行通信,常见的消息包括:
MEET
、PING
、PONG
、PUBLISH
、FAIL
五种;
客户端命令
- 客户端命令是指可以在以集群模式启动的客户端向集群节点发送的命令;
CLUSTER MEET
- 将节点添加到自己所在的集群
CLUSTER MEET <ip> <port>
CLUSTER ADDSLOTS
- 将一个或多个槽指派给节点负责
CLUSTER ADDSLOTS <slot> [slot ...]
CLUSTER REPLICATE
- 将节点指定为
node_id
所指定节点的从节点,并开始对主节点进行复制
CLUSTER REPLICATE <node_id>
1. 集群节点
- 一个集群节点就是一个运行在集群模式下的Redis服务器,Redis服务器在启动时会根据
cluster-enabled
配置来决定是否开启服务器的集群模式,默认情况下是不开启集群模式的
# Normal Redis instances can't be part of a Redis Cluster; only nodes that are
# started as cluster nodes can. In order to start a Redis instance as a
# cluster node enable the cluster support uncommenting the following:
#
# cluster-enabled yes
- 一个Redis集群通常由多个节点组成,在刚开始的时候,每个节点都是互相独立的,它们都处于一个只包含自己的集群中;
- 要组建一个真正可工作的集群,首先要将各个独立的节点连接起来,构成一个包含多个节点的集群,连接各个节点的工作可以使用
cluster meet
命令完成
CLUSTER MEET <ip> <port>
- 执行
CLUSTER MEET
命令的节点(源节点),可以将ip:port
节点(目标节点),拉入源节点所在的集群; - 连接集群节点,执行集群命令(如
CLUSTER
开头的命令)的客户端,需要以集群模式启动(加-c
参数)
[~]$ redis-cli -c -p 6379
1.1 集群数据结构
- 集群模式下运行的Redis节点,除了会使用
redisServer
和redisClient
结构保存服务器和客户端状态外,还会使用clusterNode
、clusterLink
、clusterState
结构保存集群信息;
clusterState结构
clusterState
结构记录在当前节点的视角下集群目前的状态,例如:集群是否上线、集群包含多少个节点、集群当前的配置纪元等;- 每个节点都保存一个
clusterState
结构;
typedef struct clusterState{// 指向当前节点的指针clusterNode *myself;// 集群当前的配置纪元,用于实现故障转移uint64_t currentEpoch;// 集群当前的状态:是在线还是下线int state;// 集群中至少处理着一个槽的节点的数量int size;// 集群节点名单(包括myself节点)// 字典的键为节点的名字、字典的值为节点对应的clusterNode结构dict *nodes;// 每个槽处理的节点clusterNodes *slots[16384];// ...
}
clusterNode结构
clusterNode
结构保存了一个节点的当前状态,比如节点的创建时间、节点的名字、节点当前的配置纪元、节点的IP地址和端口号信息等;- 每个节点都会使用一个clusterNode结构来记录自己的状态,并为集群中的所有其他节点都创建一个相应的clusterNode结构来记录其他节点的状态;
struct clusterNode{// 创建节点的时间mstime_t ctime;// 节点的名字,由40个十六进制字符组成char name[REDIS_CLUSTER_NAMELEN];// 节点标识// 使用各种不同的标识值记录节点的角色(比如主节点或者从节点)// 以及节点目前所处的状态(比如在线或者下线)int flags;// 节点当前的配置纪元,用于实现故障转移uint64_t configEpoch;// 节点的IP地址char ip[REDIS_IP_STR_LEN];// 节点的端口号int port;// 保存连接节点所需的相关信息clusterLink *link;// 记录节点负责处理的槽位// 是一个二进制数组,索引位置为1的槽,表示是当前节点负责处理的// 2048个字节,共 2048*8=16384位unsigned char slots[2048];// 记录当前节点处理的槽数量int numbers;// ...
}
clusterLink结构
clusterLink
结构保存了连接该节点所需的有关信息,比如套接字描述符,输入缓冲区和输出缓冲区;
typedef struct clusterLink{// 连接的创建时间mstime_t ctime;// TCP套接字描述符int fd;// 输出缓冲区,保存着等待发送给其他节点的消息sds sndbuf;// 输入缓冲区,保存着从其他节点接收到的消息sds rcvbuf;// 与这个连接相关联的节点,如果没有的话就为NULLstruct clusterNode *node;}clusterLink;
1.2 节点启动
- 一个集群节点就是一个运行在集群模式下的Redis服务器,Redis服务器在启动时会根据
cluster-enable
配置选项来决定是否开启服务器的集群模式; - 运行在集群模式下的Redis服务器,会继续使用所有在单机模式(一个Redis作为一个完整的服务器)下使用的服务器组件,包括持久化、主从复制等;
- 通过客户端(加
-c
以集群模式启动)向节点A发送CLUSTER MEET <ip> <port>
命令,可以让节点A将另一个节点B(ip:port)添加到节点A所在的集群里面(拉入集群); - 节点A会与节点B进行握手,在这个过程中会为节点B创建一个
clusterNode
结构,并将该结构添加到自己的clusterState.nodes
字典里; - 节点A与节点B握手完成后,会将节点B的信息通过
Gossip
协议传播给集群中的其他节点,其他节点收到消息后也会节点B握手,最终经过一段时间后,节点B会被集群中的所有节点认识;
2. 槽指派
- Redis集群通过分片的方式来保存数据库中的键值对(不同的键值对保存在不同的集群节点上);
- 集群的整个数据库被分为
16834
(2048*8)个槽(slot
),集群中的每个节点可以处理0个或最多16834个槽; - 当数据库中的16384个槽都有节点在处理时,集群处于上线状态,相反地,如果数据库中有任何一个槽没有得到处理,那么集群处于下线状态;
- 集群节点保存键值对以及键值对过期的方式与单机Redis服务器方式完全相同;与单机服务器在数据库方面的一个区别是:节点只能使用0号数据库;
cluster addslot <number>
命令将一个或多个槽位指派给节点负责;
2.1 记录节点的槽指派信息
每个节点的clusterNode
结构都有一个slots
和numslot
属性(数据结构见上):
slots
是一个二进制位数组,负责记录当前节点处理的槽位。数组的长度是2048个字节,共包含16384个二进制位,以0位起始索引,以16383为终止索引,如果数组在索引i上的二进制位的值为1,那么表示该节点负责处理槽位i;numslot
记录当前节点处理的槽位数量;
2.2 传播节点的槽指派信息
- 一个节点除了会将自己负责处理的槽位记录在
clusterNode
结构的slots
属性和numslots
属性外,还会将自己的slots
数组通过消息发送给集群中的其他节点,以此来告知节点自己目前负责处理哪些槽; - 集群中每个节点都会将自己的
slots
数组通过消息发送给集群中的其他节点,并且每个接收到slots
数组的节点都会将数组保存到相应节点的clusterNode
结构里,因此,集群中的每个节点都会知道数据库中的16384个槽分别被指派给了集群中的哪些节点;
2.3 记录集群所有槽的指派信息
- 除了在节点结构里记录各自节点处理的槽,
clusterState
结构里还记录了集群中所有16384个槽对应的处理节点; clusterState
结构的slots
数组元素是一个指向clusterNode
结构的指针,指向处理槽i的节点(数据结构见上);
同时使用clusterState
的slots
记录所有槽的指派节点,和使用clusterNode
结构的slots
记录当前节点处理的槽信息,使查找槽指派信息更高效:
- 使用
clusterState
里的slots
属性,使得查询槽i是否被指派,或者槽i被指派给了哪些节点的操作更高效,如果从clusterNode
的slots
结构查询,则需要遍历所有clusterNode
结构; - 使用
clusterNode
里的slots
属性,使得每个节点给其他节点传播自己处理的槽信息时比较高效,否则程序需要先遍历整个clusterState.slots
数组;
3. 在集群中执行命令
在对数据库中的16384个槽都指派了之后,集群就会进入上线状态,这时客户端就可以向集群中的节点发送数据命令了;
当客户端(集群模式启动)向集群中某一个节点,发送与数据库键有关的命令时,接收命令的节点会计算键属于哪个槽,并检查这个槽是否指派给了自己:
- 如果键所在的槽正好就指派给了自己,那么该节点直接执行这个命令;
- 如果键所在的槽没有指派给自己,那么节点会向客户端返回一个
MOVE
错误消息,该消息里携带处理这个槽的节点信息,客户端接收到MOVE错误消息后,转向连接这个节点,并再次发送要执行的命令;
说明:
- 以集群模式启动的客户端,在接收到
MOVE
错误消息后,会执行自动转向,连接向处理该槽位的节点,然后将命令发送给该节点。在进行连接转移过程中只会打印Redirected to slot [6257] located at 127.0.0.1:7001
一条这样的语句,并不会将MOVE
错误打印出来; - 如果客户端没有以集群模式启动,那么客户端不清楚MOVE错误的作用,所以不会自动转向,只会将错误信息直接打印出来;
3.1 计算键属于的槽
slot_number(key)
方法用来计算键属于哪个槽,通过计算key的CRC-16
校验和,然后生成介于0到16383之间的整数值;
def slot_number(key):return CRC16(key) & 16383
3.2 判断槽是否由当前节点负责
当节点计算出键所属的槽i之后,会检查自己在clusterState.slots
数组中的项i,判断键所在的槽是否由自己负责:
- 如果
clusterState.slots[i]
等于clusterState.myself
,那么说明槽i由当前节点负责,节点可以执行客户端发送的命令; - 如果
clusterState.slots[i]
不等于clusterState.myself
,那么说明槽i并非由当前节点负责,节点会根据clusterState.slots[i]
执向的clusterNode
结构所记录的节点IP和端口号,向客户端返回MOVE
错误,指引客户端转向正在处理槽i的节点;
4. 重新分片
- Redis集群的重新分片操作可以将任意数量已经指派给某个节点(源节点)的槽改为指派给另一个节点(目标节点),并且相关槽所属的键值对也会从源节点被移动到目标节点;
- 重新分片操作可以在线进行,在重新分片过程中,集群不需要下线,并且源节点和目标节点都可以继续处理命令请求;
4.1 重新分片原理
Redis集群的重新分片操作由Redis的集群管理软件redis-trib
负责执行;
redis-trib
对集群的单个槽slot进行重新分片的步骤如下:
redis-trib
对目标节点发送CLUSTER SETSLOT <slot> IMPORTING <source_id>
命令,让目标节点准备好从源节点导入属于槽slot的键值对;redis-trib
对源节点发送CLUSTER SETSLOT <slot> MIGRATING <target_Id>
命令,让源节点准备好将属于槽slot的键值对迁移至目标节点;redis-trib
向源节点发送CLUSTER GETKEYSINSLOT <slot> <count>
命令,获得最多count
个属于槽slot的键值对的键名;- 对获得的属于槽slot的每个键,
redis-trib
都向源节点发送一个MIGRATE <target_ip> <target_port> <key_name> 0 <timeout>
命令,将被选中的键原子地从源节点迁移至目标节点; - 重复执行获取槽slot的
count
个键,和迁移到目标节点,直到源节点保存的所有属于槽slot的键值对都被迁移至目标节点为止; redis-trib
向集群中任意一个节点发送CLUSTER SETSLOT <slot> NODE <target_id>
命令,将槽slot指派给目标节点,这一指派信息会通过消息发送至整个集群,最终集群中的所有节点都会知道槽slot已经指派给了目标节点;
如果重新分片涉及多个槽,那么redis-trib
将对每个给定的槽分别执行上面给出的步骤;
4.2 ASK错误
在进行重新分片期间,源节点向目标节点迁移一个槽的过程中,可能会出现这样一种情况:迁移的槽中有许多键值对,迁移过程中会有一部分键值对保存在源节点里,而另一部分键值对则保存在目标节点里;
如果这时,客户端向源节点发送一个与数据库键相关的命令,并且命令要处理的数据库键恰好就属于正在被迁移的槽时:
- 源节点会先在自己的数据库里查找键,如果找到的话,就执行客户端发送的命令;
- 如果源节点没能在自己的数据库里找到键,那么这个键有可能已经被迁移到目标节点,源节点将向客户端发送一个
ASK
错误,指引客户端转向正在导入槽的目标节点,并再次发送之前想要执行的命令(由以集群模式启动的客户端自动转向请求目标节点);
和接到MOVED
错误类似,集群模式的客户端在接到ASK
错误时也不会打印错误,而是会自动根据错误提供的IP地址和端口进行转向操作;但是,如果客户端不是以集群模式启动,则客户端不清楚ASK
错误的作用,只是会把错误信息打印出来;
4.3 ASKING命令
接到ASK
错误的客户端在向目标节点发送请求时,会先发送一个ASKING
命令,打开该客户端的REDIS_ASKING
标识,之后再重新发送原本想要执行的命令:
- 在一般情况下,如果客户端向节点发送一个关于槽i的命令,而槽i又没有指派给这个节点的话,那么节点将向客户端返回一个
MOVED
错误,指引客户端转向连接处理这个槽的节点; - 如果节点的
clusterState.importing_slots_from[i]
显示节点正在导入槽i,则节点会判断客户端是否带有ASKING
标识,对于带有ASKING
标识的客户端命令,节点将执行这个关于槽i的命令一次,如果客户端没有ASKING
标识,则节点拒绝执行,并返回MOVED
错误;
分析:
- 重新分片过程中,槽i的所有键值对都从源节点转移到目标节点后,才会向集群通知槽i的处理指派给目标节点,所以在转移过程中,所有的
MOVED
错误都会将处理槽i的节点指向源节点; - 但是在转移过程中,已经有部分键值对转移到了目标节点,向源节点发送命令处理这部分键时,源节点会返回
ASK
错误,指引客户端连向目标节点,客户端发送键处理命令之前先发送ASKING
命令,表示客户端是由源节点指引来的;这时目标节点如果判断节点正在导入槽,则破例执行一次客户端发送的命令;
注意:
- ASKING命令的作用是打开客户端的
REDIS_ASKING
标识; - 客户端的
REDIS_ASKING
标识是一个一次性标识,当节点执行了带有该标识的客户端发送的命令后,客户端的REDIS_ASKING
标识就会被移除,意思是客户端的ASKING
命令只对接下来的一个命令有效;
4.4 ASK错误与MOVED错误的区别
ASK错误和MOVED错误都会导致客户端转向,它们的区别是:
- MOVED错误代表槽的负责权已经从一个节点转移到了另一个节点,在客户端接收到关于槽i的MOVED错误之后,客户端每次遇到关于槽i的命令请求时,都可以直接将命令请求发送至MOVED错误所指向的节点;
- ASK错误只是两个节点在迁移槽的过程中使用的一种临时措施,在客户端收到关于槽i的ASK错误之后,客户端只会在接下来的一次命令请求中将关于槽i的命令发送至ASK错误所指示的节点,但这种转向不会对客户端今后发送关于槽i的命令请求产生影响;
5. 复制与故障转移
5.1 主从节点
- Redis集群中的节点分为主节点和从节点,其中主节点用于处理槽,而从节点则用于复制某个主节点,并在被复制的主节点下线时代替主节点继续处理命令请求;
- 向一个节点发送
CLUSTER REPLICATE <node_id>
可以让该节点成为node_id
所指定节点的从节点,并开始对主节点进行复制(不是执行单机复制的slaveof
命令);
5.2 故障检测
- 集群中每个节点(主节点和从节点)都会定期向集群中的其他节点发送
PING
消息(心跳检测),如果接收PING消息的节点没有在规定的时间内返回PONG
消息,那么发送节点就会将接收节点标记为疑似下线(probable fail); - 如果一个集群里面,半数以上负责处理槽的主节点将某个主节点x标记为疑似下线,那么这个主节点x将被标记为已下线(FAIL),将主节点x标记为已下线的节点会向集群广播一条关于主节点x的FAIL消息,所有收到这条消息的节点(主节点和从节点)都会立即将主节点x标记为已下线;
5.3 故障转移
当一个从节点发现自己正在复制的主节点进入了已下线状态时,从节点将开始对下线主节点进行故障转移,故障转移的执行步骤是:
- 检测到主节点下线的从节点向集群广播一条
CLUSTERMSG_TYPE_FAILOVER_AUTH_REQUEST
消息,要求所有收到这条消息、并且具有投票权的主节点向这个从节点投票; - 如果一个从节点收集到大于等于
N/2+1
个主节点的投票时(N是具有投票权的主节点数),会被选举为新的主节点;执行SLAVEOF no one
命令,成为新的主节点; - 新的主节点会撤销所有对已下线主节点的槽指派,并将这些槽全部指派给自己;
- 新的主节点向集群广播一条
PONG
消息,这条消息可以让集群中的其他节点立即知道这个节点已经由从节点变成了主节点,并且这个主节点接管了原本由已下线主节点负责处理的槽; - 新的主节点开始接收和处理自己负责的槽有关的命令请求,故障转移完成;
5.4 选举新的主节点
- 当从节点发现自己复制的主节点进入已下线状态时,会向集群广播一条
CLUSTERMSG_TYPE_FAILOVER_AUTH_REQUEST
消息,要求所有收到这条消息、并且具有投票权的主节点向这个从节点投票; - 有投票权的主节点会将票投给第一个给自己发送投票消息的从节点,并且一个配置纪元里,一个主节点只能投票给一个从节点;
- 从节点收集自己的票数,当一个从节点收集到大于等于
N/2+1
(N是具有投票权的主节点的数量)张票后,这个从节点会被选为新的主节点; - 如果在一个配置纪元里,没有从节点能收集到足够多的支持票,那么集群进入下一个新的配置纪元,并再次进行选举,直到选出新的主节点为止;
6. 集群消息
集群消息是用于集群节点之间相互通信用的(不是集群节点和客户端通信),集群中的各个节点通过发送和接收消息来进行通信。
节点发送的消息主要有以下五种:
MEET
消息:当节点接收到客户端的CLUSTER MEET
命令时(将目标节点拉入自己所在的集群),节点会向目标节点发送MEET
消息,请求目标节点加入自己所处的集群;PING
消息:心跳检测消息,集群中每个节点默认每隔一秒会从已知节点列表中随机选择5个节点,然后向最长时间没有发送过PING消息的节点发送PING消息;另外,如果节点A最后一次接收到节点B发送的PONG
消息距离当前时间超过了节点A的cluster-node-timeout
设置的一半,那么也会向节点B发送PING消息;PONG
消息:对MEET
消息或PING
消息的回复,也可以通过PONG消息向集群中广播自己的信息(自己的信息在消息头里)FAIL
消息:当一个主节点A判断到另一个主节点B已经进入下线状态时,节点A会向集群中广播一条关于节点B的FAIL
消息,所有接收到这条消息的节点都会立即将节点B标记为已下线;PUBLISH
消息:广播命令,当节点接收到一个PUBLISH
命令时,节点会执行这个命令,并向集群中广播一条PUBLISH
消息,所有接收到这条PUBLISH
消息的节点都会执行相同的PUBLISH
命令;
6.1 消息结构
节点发送的所有消息都由一个消息头包裹,消息头除了包含消息正文之外,还记录了消息发送者自身的一些消息。使用结构clusterMsg
表示;
typedef struct {// 消息的长度(包括这个消息头和消息正文的长度)uint32_t totlen;// 消息的类型uint16_t type;// 消息正文包含的节点信息数量// 只在发送 PING、PONG 、MEET 时使用uint16_t count;// 发送者所处的配置纪元uint64_t currentEpoch;// 如果发送者是一个主节点,那么这里记录的是发送者的配置纪元// 如果发送者是一个从节点,那么这里记录的是发送者正在复制的主节点的配置纪元uint64_t configEpoch;// 发送者的名字(ID)char sender[REDIS_CLUSTER_NAMELEN];// 发送者目前的槽指派信息unsinged char myslots[REDIS_CLUSTER_SLOTS/8];// 如果发送者是一个主节点,这里记录的是REDIS_NODE_NULL_NAME// 如果发送者是一个从节点,这里记录的是发送者正在复制的主节点的名字char slaveof[REDIS_CLUSTER_NAMELEN];// 发送者的端口号uint16_t port;// 发送者的标识值uint16_t flags;// 发送者所处的集群的状态unsigned char state;// 消息的正文union clusterMsgData data;}clusterMsg;
7. Gossip协议
Gossip
是八卦的意思,Gossip算法又叫谣言传播算法或病毒传播算法等,- 它的作用是在有限的时间内,让所有人都知道一个消息;
- Gossip过程由一个种子节点发起,当一个种子节点有状态需要更新到网络中的其他节点时,它会随机的选择周围的几个节点散播消息,收到消息的节点也会重复该过程,直到网络中的所有节点都收到了消息。这个过程可能需要一定的时间,由于不能保证某个时刻所有节点都收到消息,只能保证理论上最终节点都会收到消息,因此它是一个最终一致性协议。
Gossip协议特点:
- 周期性散播消息;
- 被感染节点随机选择K个邻接节点散播消息;
- 每次散播消息都选择对尚未发送过消息的节点散播;
- 收到消息的节点不再向发送节点散播;
参考文献
- 《Redis设计与实现》黄建宏 著,机械工业出版社.
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 一篇文章讲透spring ioc (概念、原理、实例、应用场景、面试题)
ioc概念优势原理常见api实例应用场景常见面试题ioc概念、优势、原理、常见使用、实例、应用场景ioc概念与定义:ioc翻译成中文为控制反转。意思可以理解为类与类之间的依赖通过容器来控制、配置实现;换一种方式可以这么理解原来类与类之间在编译时即产生了依赖,即new 对象时,…...
2024/4/14 13:14:34 - Web | RabbitMQ | 整合Spring & Springboot
Web-RabbitMQ-整合Spring & Springboot目录一、Spring整合RabbitMQ生产方1. 依赖2. properties配置文件3. spring-rabbitmq.xml配置文件4. 发送消息消费方1. 依赖2. properties配置文件3. 定义监听器消费端测试代码二、Spring Boot整合RabbitMQ生产者1. 依赖2. application…...
2024/4/19 4:55:55 - 手把手整合SSM框架
前言如果看过前几篇文章,对 Spring 和 MyBatis 有了一定了解,一定想上手试试。这篇文章从 0 到 1,手把手整合 SSM (Spring、Spring MVC、MyBatis)。本篇是代码篇,在 PC 端浏览更佳,源码在文末文章目录前言搭建整合 SSM 之 HelloWorld开发环境目录环境搭建新建项目导入依赖…...
2024/4/1 4:02:35 - Web | RabbitMQ | 高级应用
Web-RabbitMQ高级目录一、消息可靠性投递1. confirm 确认模式1.1 整合Springboot/Spring后中的实现第一步:开启第二步:设置回调函数1.2 Channel类第一步:开启第二步:设置回调函数1.3 总结2. Return 退回模式第一步:开启第二步:设置回调函数小结3. 对比二、消费端确认2.1…...
2024/4/1 4:02:35 - 使用VB.NET开发一个简单的串口程序
本程序严谨程度不高,仅适合新手做成功程序使用,严谨程序后续会有更新. 这两个程序结合起来是可以用的. 单片机程序代码(用于在收到数据后做出反应) //整合自STC官方文档 #include "reg52.h" #include "intrins.h" typedef unsigned char u8; typedef unsig…...
2024/4/14 13:15:50 - Java | 加密技术 | 摘要加密算法(不含原理)
一、背景简介 1.1 含义 消息摘要采用单向Hash函数将需加密的明文"摘要"成一串密文,这一串密文亦称为数字指纹(Finger Print)。它有固定的长度,且不同的明文摘要成密文,其结果总是不同的,而同样的明文其摘要必定一致。这样这串摘要便可成为验证明文是否是"真…...
2024/4/26 16:56:14 - 喜欢的语句记录——皮囊
我只想着做好一点点的事情,然后期待,这么一点事,或许哪天能积累成一个不错的景观。起码是自己喜欢的景观。 每个人都已经过上不同的生活,不同的生活让许多人在这个时空里没法相处在共同的状态中,除非等彼此都老了,年迈再次抹去其他,构成我们每个人最重要的标志,或许那时…...
2024/5/7 7:04:58 - 英语学习单词篇(9)
复习:一.词根与词缀:词根与词缀 意思 example meaning1. rig 正,直 upright n. 垂直;竖立adj. 正直的,诚实的;垂直的,直立的;笔直的;合乎正道的2.host 客人;陌生人 hostile n. 敌对adj. 敌对的,敌方的;怀敌意的3.miss 送,放,派出,错过 transmission n. 传动装置…...
2024/4/14 13:15:30 - 移动端不利用HTML5和echarts开发一样可以实现大数据展示及炫酷统计系统(产品技术综合)
一、由于项目需要进行手机看板展示设计及开发展示效果图如下:上图为概况(点击相应模块进入详情页面)上图为运营统计(一些统计类图标状图折线图等......)车辆分布状况(展示在地图上分布)上图为点击一辆车的轨迹和运行情况此产品唯一亮点在于完全可以把利用HTML5和echarts…...
2024/5/7 3:13:55 - 174. 地下城游戏;剑指 Offer 40. 最小的k个数;378. 有序矩阵中第K小的元素;703. 数据流中的第K大元素
一些恶魔抓住了公主(P)并将她关在了地下城的右下角。地下城是由 M x N 个房间组成的二维网格。我们英勇的骑士(K)最初被安置在左上角的房间里,他必须穿过地下城并通过对抗恶魔来拯救公主。骑士的初始健康点数为一个正整数。如果他的健康点数在某一时刻降至 0 或以下,他会…...
2024/5/7 9:34:00 - spring源码系列(六)——番外篇如何编译spring的源码
学习spring源码的第一步便是需要去编译源码;很多网友在编译spring源码的时候遇到了困难继而放弃了spring源码的学习; 这篇文章主要来阐述如何正确的编译spring源码;首先你得检查你的网线能正常上网;最好网速还行;不然你会疯掉下载spring源码 下载spring源码可以选择github…...
2024/4/20 8:12:31 - 阿里面试官:小伙子,你给我说一下前后端分离的接口规范是什么?
1. 前言 随着互联网的高速发展,前端页面的展示、交互体验越来越灵活、炫丽,响应体验也要求越来越高,后端服务的高并发、高可用、高性能、高扩展等特性的要求也愈加苛刻,从而导致前后端研发各自专注于自己擅长的领域深耕细作。 然而带来的另一个问题:前后端的对接界面双方却…...
2024/4/20 12:45:28 - 制造业IT人员对MES系统的理解(业务篇/一)
Manufacturing Execution System,简称MES,直译成中文即制造执行系统。从名字理解,MES系统可以从三个层面来理解——制造、执行、系统。定义制造对一个制造型企业/工厂来说,制造是其最基本且核心的定义。某工厂在生产某种产品的过程中,需要使用生产装置和公用能源将原辅料转…...
2024/5/7 10:57:03 - Python 第8章 在硬盘上创建、读取和保存文件
8.1文件与文件路径文件有两个关键属性:文件名、路径 文件名中,最后一个句点之后的部分称为文件的扩展名,扩展名指出了文件的类型 路径指明了文件在计算机上的位置,路径中的C:\部分是根文件夹,它包含了所有其他文件 windows中,根文件夹名为C:\,也称为C盘;OSX和Linux中,…...
2024/5/6 20:53:06 - 前端基础复习-HTML要点大串烧
1. 初识HTMLHTML 指的是超文本标记语言 (Hyper Text Markup Language)是用来描述网页的一种语言 H(很)T(甜)M(蜜)L(啦) HTML 不是一种编程语言,而是一种标记语言 (markup language) 标记语言是一套标记标签 (markup tag)所谓超文本,有2层含义:因为它可以加入图片、声…...
2024/5/7 11:05:14 - Java 静态代理和两种动态代理(JDK动态代理和CGLIB动态代理)
这里写目录标题静态代理JDK 动态代理CGLIB代理 静态代理由代理对象代理所有真实对象的功能 自己编写代理类,每个代理的功能需要单独编写 缺点:当代理功能比较多时,代理类中方法需要写很多 接口类public interface Gongneng {public void kaihui();public void faqian();}被代…...
2024/4/14 13:16:46 - 1058 选择题 (20分)
题目:批改多选题是比较麻烦的事情,本题就请你写个程序帮助老师批改多选题,并且指出哪道题错的人最多。输入格式:输入在第一行给出两个正整数 N(≤ 1000)和 M(≤ 100),分别是学生人数和多选题的个数。随后 M 行,每行顺次给出一道题的满分值(不超过 5 的正整数)、选项…...
2024/5/7 8:01:24 - 4 运算符
1.字符串 1.1 格式化字符串1.拼串 print(‘12’ + ‘3’) 2.参数传递 a = ‘12’ b = ‘3’ print(a,b) 3.占位符 s = s1 =%s,s2 = %s % (‘12’,‘3’) ’ 4.格式化的方式 a = ‘12’ b = ‘3’ s = f’{a}{b}’ 第二种: s = {}{}format(‘12’.‘3’)1.2 字符串的其他操…...
2024/5/7 10:30:29 - 数学建模算法与应用学习day2——非线性规划问题
以下内容来自司守奎编写的数学建模算法与应用学习,主要是记录自己的学习历程,转载还请标明出处! 一、非线性规划 知识点 3.1 非线性规划模型 3.1.1 非线性规划的实例与定义3.1.2 非线性规划的MATLAB解法%不完全代码(有点问题) %非线性规划的MATLAB解法 function f = fun1(…...
2024/4/15 5:36:46 - 5 条件控制语句
1. 运算符条件运算符(三元) a = 20,b = 30,print(‘a的值比较大’) if a > b else print(‘b的值比较大’) 运算符的优先级—>看表, 优先级:()>and>or>not2. 条件控制语句if语句,只会控制紧跟其后的那条语句 input()函数获取用户输入的内容,input()调用后…...
2024/5/7 1:47:09
最新文章
- IP SSL证书申请教程:实现HTTPS加密访问
随着网络安全意识的提高,HTTPS加密访问已经成为网站安全性的重要标准。通过安装SSL证书,网站可以实现数据的加密传输,有效保护用户隐私和数据安全。本文将详细介绍如何为IP地址申请SSL证书,并实现HTTPS加密访问。 一、准备工作 …...
2024/5/9 14:02:38 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/5/7 10:36:02 - PHP:获取时间戳,时间,以及相关转换
一、获取当前时间戳 // 获取当前时间的时间戳(秒级,11位) $currentTimestampInSeconds time(); 二、秒级(11位)时间戳转换为毫秒级(13位)时间戳 乘以1000即可 // 转换为毫秒时间戳…...
2024/5/5 2:40:19 - 招投标系统简介 企业电子招投标采购系统源码之电子招投标系统 —降低企业采购成本
功能描述 1、门户管理:所有用户可在门户页面查看所有的公告信息及相关的通知信息。主要板块包含:招标公告、非招标公告、系统通知、政策法规。 2、立项管理:企业用户可对需要采购的项目进行立项申请,并提交审批,查看所…...
2024/5/7 14:12:08 - 54.螺旋矩阵
题目描述 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。示例 1:输入:matrix [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5] 示例 2:输入:matrix …...
2024/5/8 11:31:17 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/8 6:01:22 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/5/7 9:45:25 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/5/4 23:54:56 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/5/9 4:20:59 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/5/4 23:54:56 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/5/4 23:55:05 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/5/4 23:54:56 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/5/7 11:36:39 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/5/4 23:54:56 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/5/6 1:40:42 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/5/4 23:54:56 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/5/8 20:48:49 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/5/7 9:26:26 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/5/4 23:54:56 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/8 19:33:07 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/5/5 8:13:33 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/5/8 20:38:49 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/5/4 23:54:58 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/5/9 7:32:17 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/5/4 23:54:56 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57