Redis 7.x 系列【30】集群管理命令
有道无术,术尚可求,有术无道,止于术。
本系列Redis 版本 7.2.5
源码地址:https://gitee.com/pearl-organization/study-redis-demo
文章目录
- 1. 概述
- 2. 集群信息
- 2.1 CLUSTER INFO
- 3. 节点管理
- 3.1 CLUSTER MYID
- 3.2 CLUSTER NODES
- 3.3 CLUSTER REPLICAS
- 3.4 CLUSTER FORGET
- 3.5 CLUSTER MEET
- 4. 哈希槽管理
- 4.1 CLUSTER SLOTS
- 4.2 CLUSTER KEYSLOT
- 4.3 CLUSTER COUNTKEYSINSLOT
- 4.4 CLUSTER DELSLOTS
- 4.5 CLUSTER ADDSLOTS
- 4.6 CLUSTER SETSLOT
- 4.7 CLUSTER FLUSHSLOTS
- 5. 其他
- 5.1 CLUSTER FAILOVER
1. 概述
集群管理命令是用于管理和维护 Redis
集群,允许用户执行如查看集群信息、添加或删除节点、重新分片等操作。
所有命令:
命名 | 描述 |
---|---|
ASKING | 用于 ASK 重定向 |
CLUSTER ADDSLOTS | 将一个或多个槽指派给当前节点 |
CLUSTER ADDSLOTSRANGE | 将指定范围内的槽指派给当前节点 |
CLUSTER BUMPEPOCH | 提升集群的 config epoch |
CLUSTER COUNT-FAILURE | 返回指定节点当前未过期的失败报告的数量 |
CLUSTER COUNTKEYSINSLOT | 返回指定槽中键的数量 |
CLUSTER DELSLOTS | 移除一个或多个槽对当前节点的指派 |
CLUSTER DELSLOTSRANGE | 移除范围内的槽对当前节点的指派 |
CLUSTER FAILOVER | 手动触发故障转移 |
CLUSTER FLUSHSLOTS | 移除指派给当前节点的所有槽,让当前节点变成一个没有指派任何槽的节点 |
CLUSTER FORGET | 从集群中移除指定节点ID 的节点 |
CLUSTER GETKEYSINSLOT | 返回指定槽中的键 |
CLUSTER INFO | 打印集群的详细信息,包括集群状态、节点数量、槽分配情况 |
CLUSTER KEYSLOT | 返回指定键存储的哈希槽 |
CLUSTER LINKS | 输出所有集群节点之间对等连接信息 |
CLUSTER MEET | 将指定IP 和端口的节点添加到集群中 |
CLUSTER MYID | 查看当前节点的运行ID |
CLUSTER MYSHARDID | 查看当前节点的分片ID |
CLUSTER NODES | 列出集群当前已知的所有节点及其相关信息 |
CLUSTER REPLICAS | 返回指定主节点进行复制的从节点列表 |
CLUSTER REPLICATE | 将当前节点设置为指定节点ID 的节点的从节点 |
CLUSTER RESET | 重置集群节点的状态 |
CLUSTER SAVECONFIG | 将节点的配置文件保存到硬盘上 |
CLUSTER SET-CONFIG-EPOCH | 在新节点中设置特定的配置时期 |
CLUSTER SETSLOT | 改变接收节点中哈希槽的状态 |
CLUSTER SHARDS | 获取集群中所有分片信息 |
CLUSTER SLAVES | 查看指定主节点的所有从节点列表 |
CLUSTER SLOTS | 查询集群哈希槽与节点映射关系 |
READONLY | 在从节点上开启只读模式,读取可能不是最新的数据 |
READWRITE | 取消之前通过 READONLY 命令设置的只读模式 |
2. 集群信息
2.1 CLUSTER INFO
获取集群的当前状态和各种统计信息。
关键信息说明:
cluster_state
:表示集群的当前状态,ok
表示集群运行正常,其他值可能表示集群存在问题cluster_slots_assigned
:已分配的槽位数量,理想情况下应为16384
,表示所有槽位都已被分配。cluster_slots_ok
:正常运行的槽位数量,应与cluster_slots_assigned
相同,除非有槽位因故障而无法正常工作。cluster_slots_pfail
:疑似失败的槽位数量,这些槽位可能由于网络问题等原因暂时无法访问。cluster_slots_fail
:运行失败的槽位数量,这些槽位由于某种原因(如节点故障)已经完全无法访问。cluster_known_nodes
:集群中已知节点的数量,这个数量应等于集群中所有正常工作的节点数。
示例:
主节点(192.168.56.101:6381)>cluster info
"cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:6
cluster_size:3
cluster_current_epoch:9
cluster_my_epoch:3
cluster_stats_messages_ping_sent:42283
cluster_stats_messages_pong_sent:42739
cluster_stats_messages_fail_sent:4
cluster_stats_messages_update_sent:3
cluster_stats_messages_sent:85029
cluster_stats_messages_ping_received:42739
cluster_stats_messages_pong_received:50471
cluster_stats_messages_fail_received:1
cluster_stats_messages_received:93211
total_cluster_links_buffer_limit_exceeded:0
"
3. 节点管理
3.1 CLUSTER MYID
查看当前节点的运行 ID
(Run ID
),运行 ID
是集群中每个节点唯一的标识符,用于集群内部的管理和通信。在节点重启后可能会改变,因此它不能作为节点的永久标识符。但在节点运行期间,运行 ID
是唯一的,并且不会改变。在进行集群管理操作时,如添加、删除节点或进行故障转移等会用到该 ID
。
示例:
主节点(192.168.56.101:6381)>CLUSTER MYID
"9f9c30c3f73106e256fdec27264fc8129e1287fd"
3.2 CLUSTER NODES
查看集群当前已知的所有节点以及节点信息,对于集群的管理、监控和故障排查都非常重要。
示例:
主节点(192.168.56.101:6381)>CLUSTER NODES
"9f9c30c3f73106e256fdec27264fc8129e1287fd 192.168.56.101:6381@16381 myself,master - 0 1721405084000 3 connected 12288-16383
e909dc338f4c2fc7687cf4426d3b95956a90a8a8 192.168.56.101:6380@16380 master - 0 1721405088116 9 connected 0-1364 5461-12287
ce27fa445e987f75bddeeb68fc6fe440678ad1bb 192.168.56.101:6382@16382 master - 0 1721405087000 7 connected 1365-5460
0f1d8d6459ac4252636cb4b8e1764de9e277411c 192.168.56.101:6390@16390 slave 9f9c30c3f73106e256fdec27264fc8129e1287fd 0 1721405088000 3 connected
724c7b874dc0c37a462cd5ab59325203344f8008 192.168.56.101:6379@16379 slave ce27fa445e987f75bddeeb68fc6fe440678ad1bb 0 1721405090177 7 connected
b5bde236f14f21f530a7095aaef3a98109009324 192.168.56.101:6383@16383 slave e909dc338f4c2fc7687cf4426d3b95956a90a8a8 0 1721405089144 9 connected"
各部分信息说明:
ce27fa445e987f75bddeeb68fc6fe440678ad1bb
:节点ID
,每个节点的唯一标识符192.168.56.101:6382@16382
:节点的IP
地址、客户端连接端口号、集群总线端口号,用于节点间的通信master
:节点在集群中的角色,可以是主节点(master
)或从节点(slave
)- 0
:节点标记,- 0
表示没有特殊的标记,在某些情况下,这里可能会显示fail
、myself
或其他状态标志1721405087000
:节点最后一次发送心跳消息到当前节点的时间戳(以毫秒为单位)7
:配置纪元(config epoch
)的编号,是一个递增的计数器,用于在集群重新配置(如故障转移)时跟踪集群的状态connected
:节点的当前状态,如在线(connected
)、疑似失败(pfail
)、失败(fail
)等1365-5460
:分配的哈希槽
3.3 CLUSTER REPLICAS
返回主节点进行复制的从节点列表。
示例:
主节点(192.168.56.101:6381)>CLUSTER REPLICAS 9f9c30c3f73106e256fdec27264fc8129e1287fd1) "0f1d8d6459ac4252636cb4b8e1764de9e277411c 192.168.56.101:6390@16390 slave 9f9c30c3f73106e256fdec27264fc8129e1287fd 0 1721406870213 3 connected"
3.4 CLUSTER FORGET
从集群中移除指定的节点。
示例:
主节点(192.168.56.101:6381)>CLUSTER FORGET e909dc338f4c2fc7687cf4426d3b95956a90a8a8
"OK"
注意事项:
- 只是在集群中移除,并不会关闭该节点或停止其运行
- 请确保被移除的节点确实不再需要参与集群的运行,并且已经做好了相应的数据备份和迁移工作
查看集群信息:
3.5 CLUSTER MEET
用于将支持集群的不同 Redis
节点连接成一个工作集群。
节点默认情况下不相互信任,被视为未知节点,需要让其他节点接受并加入到集群,目前提供了两种方式:
CLUSTER MEET
:强制一个节点与另一个节点建立联系Gossip
:使用流言协议进行传播
示例,将上面被移除的节点重新加入到集群:
主节点(192.168.56.101:6381)>CLUSTER MEET 192.168.56.101 6380
"OK"
4. 哈希槽管理
4.1 CLUSTER SLOTS
获取集群中所有哈希槽的分配情况。返回值为嵌套数组,每个嵌套数组包含一个哈希槽的范围,以及负责该槽范围的节点的 IP
地址和端口号。
示例:
主节点(192.168.56.101:6381)>CLUSTER SLOTS1) 1) "0"2) "1364"3) 1) "192.168.56.101"2) "6380"3) "e909dc338f4c2fc7687cf4426d3b95956a90a8a8"4) 4) 1) "192.168.56.101"2) "6383"3) "b5bde236f14f21f530a7095aaef3a98109009324"4) 2) 1) "1365"
4.2 CLUSTER KEYSLOT
返回给定 key
存储的哈希槽编号。
示例:
主节点(192.168.56.101:6381)>CLUSTER KEYSLOT aa
"1180"
4.3 CLUSTER COUNTKEYSINSLOT
返回指定哈希槽中 key
的数量。只查询连接节点的本地数据集,如果指定的 slot
被分配在别的节点上,就会返回 0
。
示例:
主节点(192.168.56.101:6381)>CLUSTER COUNTKEYSINSLOT 1180
"1"
4.4 CLUSTER DELSLOTS
将接收命令的节点上的一组哈希槽进行移除。
示例:
主节点(192.168.56.101:6381)>CLUSTER DELSLOTS 12288 12299 12300
"OK"
4.5 CLUSTER ADDSLOTS
将一组哈希槽分配给接收命令的节点。如果命令执行成功,该节点将指定的哈希槽映射到自己身上,并开始广播新的配置。
注意事项:
- 如果哈希槽已被分配给其他节点,会抛出异常
- 如果同一个槽位被多次指定,则该命令会失败
示例,将上面移除的哈希槽,重新分配给当前节点:
主节点(192.168.56.101:6381)>CLUSTER ADDSLOTS 12288 12299 12300
"OK"
4.6 CLUSTER SETSLOT
用于重新分片哈希槽,以不同的方式改变接收节点中哈希槽的状态。
命令格式:
CLUSTER SETSLOT slot <IMPORTING node-id | MIGRATING node-id |NODE node-id | STABLE>
子命令说明:
MIGRATING
:将哈希槽设置为迁移状态。通常用于在源节点上,表明该槽位的数据正在迁移到其他节点。IMPORTING
:将哈希槽设置为导入状态。这通常用于在目标节点上设置槽位,表明该节点正在从其他节点导入数据。STABLE
:清除哈希槽上的任何导入/迁移状态。这通常用于在迁移过程完成后,将槽位状态重置为稳定状态。NODE
:将哈希槽分配到另一个节点。可能存在一些限制,建议使用CLUSTER ADDSLOTS
命令来分配槽位。
4.7 CLUSTER FLUSHSLOTS
移除指派给当前节点的所有槽,让当前节点变成一个没有指派任何槽的节点。
示例:
5. 其他
5.1 CLUSTER FAILOVER
用于手动触发故障转移过程,强制将从节点升级为主节点。手动故障转移是一种特殊的故障转移方式,它通常在没有实际故障发生时执行,但我们希望以安全的方式(没有任何数据丢失的风险)将当前的主节点与其从节点之一进行交换。
命令格式:
CLUSTER FAILOVER [FORCE | TAKEOVER]
参数说明:
- 无参:尝试与当前的主节点进行协商,并遵循标准的故障转移流程
FORCE
:从节点会跳过与主节点的协商步骤,并尽快启动故障转移过程TAKEOVER
:它允许从节点单方面地成为主节点,而不需要等待集群中其他主节点的授权或投票
注意事项:
- 只能在从节点上执行
FORCE
和TAKEOVER
参数会绕过正常的故障转移流程,可能会导致意外的后果- 建议自动处理故障转移,而不是手动干预
示例,让从节点升级为主节点:
相关文章:
Redis 7.x 系列【30】集群管理命令
有道无术,术尚可求,有术无道,止于术。 本系列Redis 版本 7.2.5 源码地址:https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. 概述2. 集群信息2.1 CLUSTER INFO 3. 节点管理3.1 CLUSTER MYID3.2 CLUSTER NODES3…...
将YOLOv8模型从PyTorch的.pt格式转换为TensorRT的.engine格式
TensorRT是由NVIDIA开发的一款高级软件开发套件(SDK),专为高速深度学习推理而设计。它非常适合目标检测等实时应用。该工具包可针对NVIDIA GPU优化深度学习模型,从而实现更快、更高效的运行。TensorRT模型经过TensorRT优化,包括层融合(layer …...
Hello SLAM(在Linux中实现第一个C++程序)
首先需要安装vim编辑器,输入命令 sudo apt install vim 在Ubuntu上安装好vim编辑器后,创建路径(/home/slambook/ch2),在该路径下创建一个cpp文档(touch hello.c),通过vim编辑器进行…...
IPD推行成功的核心要素(十五)项目管理提升IPD相关项目交付效率和用户体验
研发项目往往包含很多复杂的流程和具体的细节。因此,一套完整且标准的研发项目管理制度和流程对项目的推进至关重要。研发项目管理是成功推动创新和技术发展的关键因素。然而在实际管理中,研发项目管理常常面临着需求不确定、技术风险、人员素质、成本和…...
C++ 鼠标轨迹API【神诺科技SDK】
一.鼠标轨迹模拟简介 传统的鼠标轨迹模拟依赖于简单的数学模型,如直线或曲线路径。然而,这种方法难以捕捉到人类操作的复杂性和多样性。AI大模型的出现,使得神诺科技 能够通过深度学习技术,学习并模拟更自然的鼠标移动行为。 二.…...
设计模式|观察者模式
观察者模式是一种行为设计模式,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。当主题对象发生变化时,它的所有观察者都会收到通知并更新。观察者模式常用于实现事件处理系统、发布-订阅模式等。在项目中,…...
python自动化运维 通过paramiko库和time库实现服务器自动化管理
目录 一.前言 二. 代码实现以及解析 2.1导入必要的库 2.2定义服务器信息 2.3创建 SSH 客户端连接函数 2.4执行远程命令函数 2.5获取系统信息函数 2.6重启服务函数 2.7 主函数 三.致谢 一.前言 在数字化时代,IT 基础设施的规模和复杂性不断增长&am…...
HTML常用的转义字符——怎么在网页中写“<div></div>”?
一、问题描述 如果需要在网页中写“<div></div>”怎么办呢? 使用转义字符 如果直接写“<div></div>”,编译器会把它翻译为块,类似的,其他的标签也是如此,所以如果要在网页中写类似于“<div…...
shell-awk文本处理工具
1、awk概述 AWK 是一种处理文本文件的语言,是一个强大的文本分析工具。 它是专门为文本处理设计的编程语言,也是行处理软件,通常用于扫描、过滤、统计汇总工作 数据可以来自标准输入也可以是管道或文件 在 linux 上常用的是 gawk,awk …...
如何在测试中保护用户隐私!
在当今数据驱动的时代,用户隐私保护成为了企业和开发团队关注的焦点。在软件测试过程中,处理真实用户数据时保护隐私尤为重要。本文将介绍如何在测试中保护用户隐私,并提供具体的方案和实战演练。 用户隐私保护的重要性 用户隐私保护不仅是法…...
ARCGIS PRO DSK GraphicsLayer创建文本要素
一、判断GraphicsLayer层【地块注记】是否存在,如果不存在则新建、如果存在则删除所有要素 Dim GraphicsLayer pmap.GetLayersAsFlattenedList().OfType(Of ArcGIS.Desktop.Mapping.GraphicsLayer).FirstOrDefault() 获取当前map对象中的GetLayer图层 Await Queue…...
看板项目之vue代码分析
目录: Q1、vue项目怎么实现的输入localhost:8080就能自动跳到index页面Q2、组合饼状图如何实现Q3、vue项目如何实现环境的切换Q4、vue怎么实现vue里面去调用js文件里面的函数 Q1、vue项目怎么实现的输入localhost:8080就能自动跳到index页面 …...
lua 游戏架构 之 游戏 AI (七)ai_dead
定义一个名为ai_dead的类,继承自ai_base类。这个类用于处理游戏中AI在死亡状态下的行为逻辑。以下是对代码的具体解释: 1. **引入基类**: - 使用require函数引入ai_base类,作为基础类。 2. **定义ai_dead类**: …...
前端开发知识(一)-html
1.前端开发需掌握的内容: 2.前端开发的三剑客:html、css、javascript Vue可以简化JavaScpript流程。 Element(饿了么开发的) :前端组件库。 Ngix:前端服务器。 3.前端开发工具:vscode 1)按…...
身份证如何查验真伪?C#身份证二要素、三要素接口集成
身份证不仅是我们的身份证明,更是社会生活中的“通行证”,现在人们的衣食住行都离不开身份证。但对于提供服务的平台而言,如何对用户提供的身份信息进行真伪核验便成为了一大难题。别担心,今天小编为服务平台带来了身份证二要素、…...
C++ | Leetcode C++题解之第290题单词规律
题目: 题解: class Solution { public:bool wordPattern(string pattern, string str) {unordered_map<string, char> str2ch;unordered_map<char, string> ch2str;int m str.length();int i 0;for (auto ch : pattern) {if (i > m) {…...
Pytorch使用教学7-张量的广播
PyTorch中的张量具有和NumPy相同的广播特性,允许不同形状的张量之间进行计算。 广播的实质特性,其实是低维向量映射到高维之后,相同位置再进行相加。我们重点要学会的就是低维向量如何向高维向量进行映射。 相同形状的张量计算 虽然我们觉…...
生成式AI:对话系统(Chat)与自主代理(Agent)的和谐共舞
生成式AI:对话与行动的和谐共舞 我们正站在一个令人激动的时代门槛上——生成式AI技术飞速发展,带来了无限的可能性。一个关键问题浮现:AI的未来是对话系统(Chat)的天下,还是自主代理(Agent&am…...
唯众物联网(IOT)全功能综合实训教学解决方案
一、引言 在信息技术日新月异的今天,物联网(IoT)作为推动数字化转型的关键力量,其触角已延伸至我们生活的方方面面,深刻地重塑了工作模式、生活习惯乃至社会结构的每一个角落。面对这一前所未有的变革浪潮,…...
24证券从业考试报名『个人信息表』填写模板❗
24证券从业考试报名『个人信息表』填写模板❗ 1️⃣居住城市、通讯地址:写自己现居住的地址就可以。 2️⃣学历:需要注意的是学历填写的是考生已经取得的学历,在校大学生已经不具有报名资格,选择大专以上,或者是高中学…...
深度学习系列70:模型部署torchserve
1. 流程说明 ts文件夹下, 从launcher.py进入,执行jar文件。 入口为model_server.py的start()函数。内容包含: 读取args,创建pid文件 找到java,启动model-server.jar程序,同时读取log-config文件ÿ…...
算法日记day 20(中序后序遍历序列构造二叉树|最大、合并、搜索二叉树)
一、中序后序序列构造二叉树 题目: 给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树 。 示例 1: 输入:inorder [9,3,15,20,…...
【科研】# Taylor Francis 论文 LaTeX template模版 及 Word模版
【科研写论文】系列 文章目录 【科研写论文】系列前言一、Word 模板(附下载网址):二、LaTeX 版本方法1:直接网页端打开(附网址)方法2:直接下载到本地电脑上编辑下载地址说明及注意事项 前言 给…...
Linux网络配置及常见命令!
vim /etc/sysconfig/network-scripsts/ifcfg-ens33(图形界面配置网络) Xshell rz:上传(从Windows到Linux) sz:下载:(从Linux到Windows)(后接文件手工输入)…...
linux之shell脚本实战
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…...
文件上传漏洞(ctfshow web151-161)
Web151 F12修改源代码 exts后面png改为php 这样就可以上传php的文件了 Web152: 考点:后端不能单一校验 就是要传图片格式,抓个包传个png的图片 然后bp抓包修改php后缀解析 然后放包 Web153-web156 在php代码中可以使用“{}”代替“[]” …...
小猪佩奇.js
闲着没事 使用js 画一个小猪佩奇把 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</tit…...
人工智能AI合集:Ollama部署对话语言大模型-网页访问
目录 🍅点击这里查看所有博文 随着人工智能技术的飞速发展,AI已经不再是遥不可及的高科技概念,而是逐渐融入到我们的日常生活中。从智能手机的语音助手到家庭中的智能音箱,再到工业自动化和医疗诊断,AI的应用无处不在…...
CentOS搭建Apache服务器
安装对应的软件包 [roothds ~]# yum install httpd mod_ssl -y 查看防火墙的状态和selinux [roothds ~]# systemctl status firewalld [roothds ~]# cat /etc/selinux/config 若未关闭,则关闭防火墙和selinux [roothds ~]# systemctl stop firewalld [roothds ~]# …...
CDGA|数据治理:安全如何贯穿数据供给、流通、使用全过程
随着信息技术的飞速发展,数据已经成为企业运营、社会管理和经济发展的核心要素。然而,数据在带来巨大价值的同时,也伴随着诸多安全风险。因此,数据治理的重要性日益凸显,它不仅仅是对数据的简单管理,更是确…...
32单片机bootloader程序
一,单片机为什么要使用bootloader 1、使用bootloader的好处 1) 程序隔离:可以同时存在多个程序,只要flash空间够大,或者通过外挂flash,可以实现多个程序共存,在多个程序之间切换使用。 2)方便程…...
MongoDB - 数组更新操作符:$、$[]、$pop、$pull、$push、$each、$sort、$slice、$position
文章目录 1. $1. 更新数组中的值2. 更新数组中的嵌入文档 2. $[]1. 更新数组中的所有元素2. 更新数组中的所有嵌入文档 3. $pop1. 删除数组的第一个元素2. 删除数组的最后一个元素 4. $pull1. 删除所有等于指定值的项2. 删除与指定条件匹配的所有项3. 从文档数组中删除项4. 从嵌…...
多GPU并行处理[任务分配、进程调度、资源管理、负载均衡]
1. 多GPU并行处理设计 设计思路: 实现基于多GPU的并行任务处理,每个GPU运行独立的任务,以加速整体的处理速度。 实现机制: 进程隔离: 利用multiprocessing.Process为每个GPU创建独立的工作进程。 GPU资源限制: 通过设置CUDA_VISIBLE_DEVICES环境变量&…...
项目部署到服务器
(相关资源都给出来了) 1 下载MobaXterm,然后打开 正常连接输入你的服务器IP,用户名可以起名为root 2 将JDK,Tomcat,mysql安装包 布置到服务器中(JDK官网地址:https://www.oracle.com/java/technologies/downloads/#java8 mysql官网地址: …...
Idea2024 创建Meaven项目没有src文件夹
1、直接创建 新建maven项目,发现没有src/main/java 直接新建文件夹:右击项目名->new->Directory 可以看到idea给出了快捷创建文件夹的选项,可以根据需要创建,这里点击src/main/java 回车,可以看到文件夹已经创建…...
LeetCode 2766.重新放置石块:哈希表
【LetMeFly】2766.重新放置石块:哈希表 力扣题目链接:https://leetcode.cn/problems/relocate-marbles/ 给你一个下标从 0 开始的整数数组 nums ,表示一些石块的初始位置。再给你两个长度 相等 下标从 0 开始的整数数组 moveFrom 和 moveTo…...
基于STM32的农业大棚温湿度采集控制系统的设计
目录 1、设计要求 2、系统功能 3、演示视频和实物 4、系统设计框图 5、软件设计流程图 6、原理图 7、主程序 8、总结 🤞大家好,这里是5132单片机毕设设计项目分享,今天给大家分享的是智能教室。 设备的详细功能见网盘中的文章《8、基…...
go语言的命名规则
身为前端为什么去学go语言呢?我认为go在未来可能会给我带来一些收益。自认为收益是去做一件事情不可缺少的因素,就好像是你努力之后得到回报,努力的欲望会越来越强。《Head First Go》这本书里作者有一句话,如果你已经掌握了一门编…...
新增ClamAV病毒扫描功能、支持Java和Go运行环境,1Panel开源面板v1.10.12版本发布
2024年7月19日,现代化、开源的Linux服务器运维管理面板1Panel正式发布了v1.10.12版本。 在这一版本中,1Panel新增了多项实用功能。社区版方面,1Panel新增ClamAV病毒扫描功能、支持Java和Go运行环境,同时1Panel还新增了文件编辑器…...
Windows通过命令查看mac : getmac
要查看本机网卡mac,可以通过ipconfig /all 显示,但输出内容过多 可以通过getmac命令查看 示例 C:\Users\Desktop> getmac物理地址 传输名称暂缺 没有硬件 1C-1B-B5-04-E2-7D \Device\Tcpip_{80096E40-D51D-490C-9AF7-…...
Android笔试面试题AI答之Android系统与综合类(1)
答案仅供参考,来着文心一言、Kimi.ai 目录 1.简述嵌入式实时操作系统,Android 操作系统属于实时操作系统吗?嵌入式实时操作系统简述Android操作系统是否属于实时操作系统 2.简述Android系统的优势和不足?3.简述Android的系统架构 ࿱…...
【Android】数据存储方案——文件存储、SharedPreferences、SQLite数据库用法总结
文章目录 文件存储存储到文件读取文件 SharedPreferences存储存储获取SharedPreferences对象Context 类的 getSharedPreferences() 方法Activity 类的 getPreferences() 方法PreferenceManager 类中的 getDefaultSharedPreferences() 方法 示例 读取记住密码的功能 SQLite数据库…...
抖音矩阵管理系统功能说明:一站式掌握
在当下这个信息爆炸的时代,抖音作为短视频领域的佼佼者,其用户规模持续扩大,影响力日益增强。对于内容创作者和营销人员来说,如何高效管理抖音账号,实现内容的多平台分发和精准触达,成为了亟待解决的问题。…...
旅游卡使用指南及常见疑问解答
近期,许多朋友对旅游卡的免费旅游政策表示浓厚兴趣,但心中不免存疑:这真的是全程免费,无需自费一分吗? 在此,我们明确告知:免费旅游确实存在,但享受范围与条件需清晰界定。 本文将…...
【MySQL篇】Percona XtraBackup标准化全库完整备份策略(第三篇,总共五篇)
💫《博主介绍》:✨又是一天没白过,我是奈斯,DBA一名✨ 💫《擅长领域》:✌️擅长Oracle、MySQL、SQLserver、阿里云AnalyticDB for MySQL(分布式数据仓库)、Linux,也在扩展大数据方向的知识面✌️…...
背单词工具(C++)
功能分析 生词本管理: 创建生词本文件:在构造函数中创建了“生词本.txt”“背词历史.log”“历史记录.txt”三个文件。添加单词:用户可以输入单词、词性和解释,将其添加到生词本中。查询所有单词:展示生词本中所有的单…...
面试八股 | 数据库引擎 | InnoDB和myISAM的区别?
⭐️⭐️⭐️InnoDB和MyISAM的区别? InnoDB : 1、使用的是行锁,操作时候只锁一行数据,不会对其他有影响,适合高并发工作 2、支持事务 3、不仅缓存索引还要缓存真实数据,适合高并发 4、默认安装 5、支持外键 6、…...
GEE计算五种植被指数(NDVI、EVI2、RVI、MTVI2、OSAVI)
目录 计算公式源代码计算公式 源代码 // 定义感兴趣区域(这里以一个简单的矩形区域为例) var region = ee.FeatureCollection("projects/a-flyllf0313/assets/dachang"); // 定义时间范围 var startDate = 2023-04-18; var endDate &...
C/S架构和B/C架构
C/S架构(Client/Server Architecture)和B/C架构(Browser/Client Architecture)是两种不同 的软件架构模型,它们各自有不同的特点和应用场景。 一、C/S架构(Client/Server Architecture) 1. 定…...
音乐曲谱软件Guitar Pro 8.2 for Mac 中文破解版
Guitar Pro 8.2 for Mac 中文破解版是一款功能强大的音乐曲谱软件,非常适合学习如何玩,改进技巧,重现喜爱的歌曲或陪伴自己。 Guitar Pro for Mac 是一款功能强大的音乐曲谱软件,非常适合学习如何玩,改进技巧…...