Lnmp架构-Redis
网站:www.redis.cn
redis 部署
make的时候需要gcc和make 如果在纯净的环境下需要执行此命令
[root@server3 redis-6.2.4]# yum install make gcc -y
注释一下这几行
vim /etc/redis/6739.conf
2.Redis主从复制
设置 11 是master 12 13 是slave
在12 上
其他节点以此内推
此时在 11 master 上
slave 角色只能读 没有修改的权限
当在master上
在slave会实现同步
redis高可用
redis 主从切换
redis 主从原理:基于rdb 快照实现 它和MySQL的二进制日志的差别(数据类型不同)
在执行主从的时候:slave和master要先做一个认证 发起一个同步请求,master会执行一个bgsave(异步模式)/save(阻塞模式),异步模式的时候,bgsave会做一个rdb快照,然后把rdb快照发给slave,slave会做一个动作,清掉slave端所有的数据(flushall),然后slave会再次加载快照,
快照做完之后,还会有变更数据,所以放在缓存里面,然后接下来会用replicationfeedslave()增量函数 一条一条发给slave,然后再给slave端做同步 redis主从基于rdb快照格式出现
redis 主从基于快照rdb快照格式实现
一主多从的架构中 做高可用切换 redis 里自带
2 表示的意思:怎么判断master出故障呢,必须要两个节点说master出故障了 才能发起故障切换
当第一个节点发现master出现故障 会进入一种主观下线状态
当第二个节点发现master出现故障 会再次进入一种主观下线状态
两次的主观下线会触发一次客观下线,这个时候master会开始真正进行主从切换
三个节点就设置为2 两个节点就设置为1
拷贝文件的动作 一定要在启动之前
其它主机直接启动服务,无需更改配置文件
这就是哨兵模式
此时 在开一个终端11 11 此时是master
关闭master
redis集群 会自动切换master
当原来的master再次启动后,会以slave身份加入集群
在切换的时候可能会出现的问题
客户端到master没什么问题,master 到slave端的网络如果出现故障
这个时候就会把master踢出去 选举出新的master slave接上去
当网络又正常 原来的master 会同步当前集群的配置 把自己变成slave 接入到新的master 这样的话 原来的master上所有数据都会丢失
但是 客户端到master是好的 这个时候 客户端会持续往master里写数据 客户一直在写 但是master到slave出现故障 master就会变为slave 数据就会被清掉
怎么解决呢
必需保证后端有两个slave可以写
添加 min-slave-to-write=2 到配置文件
保证在主从切换的时候 客户端不要给master里面写 如果master发现都连不上两个slave 就不要往里面写入数据了 避免数据丢失
Redis集群
无中心化设计 每个节点都可以接入集群 不管是主从 都可以进行读写 在接入集群之后都可以做调度 做重定向 但是 它的整合度太高了 二次开发成本太高
会在当前的目录里 生成对应的配置文件和数据
这样就创建好了一个集群
查看命令帮助
redis-cli --help
获取集群状态
主从关系的详细信息
redis-cli --cluster 实际就是把总共16384个哈希槽 ,均摊到这三个master 进行存储 每个节点都会分得一定比例的哈希槽,哈希槽就是存数据用的
连接集群
关闭redis实例,集群自动切换
30002的 master 关闭 30005之前是slave 就会接管变成master
此时 数据就会在30005上 数据不会丢失
以上就是 redis 内置的高可用切换
如果再把脚本启动起来 这时候 刚才关闭的30002 就会被再次拉起来
拉起来之后 30002 就是slave
此时 互换了角色
设么么时候会导致这个进群节点不可用
1 这16384这些哈希槽如果不完整集群不可用
2.同一这个集群的半数master同时挂掉
再启动两个redis实例
ps ax
在线添加集群节点
新添加的节点没有hash槽,角色时是master
添加slave节点
重新迁移hash槽
删除哪个节点的时候
就得把这个节点上的哈希槽迁徙到别的机器上
要不然就会造成哈希槽不完整 集群就会shutdown
相关文章:
![](https://img-blog.csdnimg.cn/993a12f0ccef41eba0f69108c72551a6.png)
Lnmp架构-Redis
网站:www.redis.cn redis 部署 make的时候需要gcc和make 如果在纯净的环境下需要执行此命令 [rootserver3 redis-6.2.4]# yum install make gcc -y 注释一下这几行 vim /etc/redis/6739.conf 2.Redis主从复制 设置 11 是master 12 13 是slave 在12 上 其他节…...
![](https://www.ngui.cc/images/no-images.jpg)
Python 二进制数据处理与转换
不得不说,Python能火是有原因的,物联网开发中常用的数据处理方式,Python都有内置的函数或方法,相当方便,官方文档见二进制序列类型,下面是一些示例代码 string Hello World! # 字符串转二进制数据 data …...
![](https://img-blog.csdnimg.cn/img_convert/77c5aeeb7991413b31e89bb36b445e51.jpeg)
【LeetCode】297.二叉树的序列化与反序列化
题目 序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。 请设计一个算法来实现二叉树的序列化与反序列化…...
![](https://img-blog.csdnimg.cn/31da7fa157434557a2c01ab0514e9b31.png)
Java HashSet
HashSet 基于 HashMap 来实现的,是一个不允许有重复元素的集合。 HashSet 允许有 null 值。 HashSet 是无序的,即不会记录插入的顺序。 HashSet 不是线程安全的, 如果多个线程尝试同时修改 HashSet,则最终结果是不确定的。 您必…...
![](https://img-blog.csdnimg.cn/75364124d304403ea3e5fb2fdd7882d6.png#pic_center)
在iPhone上构建自定义数据采集完整指南
在iPhone上构建自定义数据采集工具可以帮助我们更好地满足特定需求,提高数据采集的灵活性和准确性。本文将为您提供一份完整的指南和示例代码,教您如何在iPhone上构建自定义数据采集工具。 自定义数据采集工具的核心组件 a、数据模型 数据模型是数据采…...
![](https://www.ngui.cc/images/no-images.jpg)
Android MediaRecorder录音
1. 简介 在android中录制音频有两种方式,MediaRecorder和AudioRecord。两者的区别如下: MediaRecorder 简单方便,不需要理会中间录制过程,结束录制后可以直接得到音频文件进行播放;录制的音频文件是经过压缩的&#…...
![](https://img-blog.csdnimg.cn/img_convert/99c254e197fcc765a9d7b38b609d90db.jpeg)
软件提示vcruntime140_1.dll丢失的解决方法,以及丢失的原因总结
在运行某些程序时,可能会出现“vcruntime140_1.dll 丢失”的错误提示。这是因为 vcruntime140_1.dll 是 Visual C Redistributable 的一部分,它通常被安装在 Windows 操作系统上。如果该文件丢失或无法找到,可能会导致程序无法正常运行。在我…...
![](https://img-blog.csdnimg.cn/ac28e549c3a7416dbb9cab7881db07d3.png)
Datax抽取mysql的bit类型数据
背景:使用datax抽取mysql的一张表,里面有两个bit类型的字段,抽取出来显示如下: 需要在抽取reader里面进行处理配置 最终生成的datax的json文件reader的配置会转换为具体的数值 最终查询效果:...
![](https://img-blog.csdnimg.cn/b054d2813894465da0a50c0f9063b4e4.png)
git 后悔药
前言 自上而下,撤销可以分为从远程库撤销,从本地库撤销,从暂存库撤销。 例子:代码已经提交了三个记录到远程库,分别对应了记录1,内容1,记录2,内容2,记录3,内…...
![](https://img-blog.csdnimg.cn/e774f41eadae4609879aacb910eb91b8.png#pic_center)
vue-cli搭建一个新项目及基础配置
vue-cli搭建一个新项目及基础配置 一、安装步骤二、main.js配置三、router下的index.js 一、安装步骤 1.安装node环境:下载地址:Node.js 2.安装脚手架:npm install -g vue/cli 3.创建vue项目:vue create 项目名 4.进入项目&…...
![](https://img-blog.csdnimg.cn/img_convert/a01874e9f63b0d56a1af985f9de5bb33.png)
【C++】 C++11(右值引用,移动语义,bind,包装器,lambda,线程库)
文章目录 1. C11简介2. 统一的列表初始化2.1 {}初始化2.2 std::initializer_list 3. 声明3.1 auto3.2 decltype3.3 auto与decltype区别3.4 nullptr 4. 右值引用和移动语义4.1 左值引用和右值引用4.2 左值引用与右值引用比较4.3 右值引用使用场景和意义4.…...
![](https://img-blog.csdnimg.cn/ee8d5c39319a48b295e2573ff514174e.png)
附录1-爬虫的一些技巧
目录 1 寻找url与显示内容的关系 2 修改请求头 3 局部刷新 4 阅读返回信息 5 多尝试页面其他的使用方式 6 尝试不同类型参数 7 表单类型的post多用data发,接口类型的post多用json发 8 消除degger 9 你在浏览器上看到的html与你下载下来的html不一…...
![](https://img-blog.csdnimg.cn/ae110a5ab78548c880bebe50684d686f.png)
【android12-linux-5.1】【ST芯片】【RK3588】【LSM6DSR】HAL移植
一、环境介绍 RK3588主板搭载Android12操作系统,内核是Linux5.10,使用ST的六轴传感器LSM6DSR芯片。 二、芯片介绍 LSM6DSR是一款加速度和角速度(陀螺仪)六轴传感器,还内置了一个温度传感器。该芯片可以选择I2C,SPI通讯,还有可编程终端,可以后置摄像头等设备,功能是很…...
![](https://img-blog.csdnimg.cn/2c8a9a73a44744b78ae58fe46c10cda7.png)
DragGAN应运而生,未来在4G视频上都可能利用拖拽式编辑
原创 | 文 BFT机器人 2023年8月14日-15日,第七届GAIR全球人工智能与机器人大会在新加坡乌节大酒店成功举办。 在「AIGC 和生成式内容」分论坛上,南洋理工大学科学与工程学院助理教授潘新钢以《Interacitve Point-Dragging Manipulation of Visual Cont…...
![](https://img-blog.csdnimg.cn/img_convert/014abd2493880d13d9045fececc8a62d.png)
【C++技能树】多态解析
Halo,这里是Ppeua。平时主要更新C,数据结构算法,Linux与ROS…感兴趣就关注我bua! 文章目录 0.多态的概念0.1 多态的定义 1. 重写2.Final与Override3.抽象类4.多态中的内存分布.4.1虚表存在哪里? 5.多态调用原理5.1 动态绑定与静…...
![](https://img-blog.csdnimg.cn/340efc707ffd46ccb149be793f5f743c.png)
【爬虫笔记】Python爬虫简单运用爬取代理IP
一、前言 近些年来,网络上的爬虫越来越多,很多网站都针对爬虫进行了限制,封禁了一些不规则的请求。为了实现正常的网络爬虫任务,爬虫常用代理IP来隐藏自己的真实IP,避免被服务器封禁。本文将介绍如何使用Python爬虫来…...
![](https://www.ngui.cc/images/no-images.jpg)
IP协议-NAT机制(理解网络结构的关键要点)
前言 我们现在使用得最多的IP协议版本是IPv4,IPv4是4个字节,32位,也就是说我们的IP地址最多就只有2^32(42亿)个,在日常生活中,我们需要联网的设备都需要有IP地址才能进行通讯,很明显…...
![](https://img-blog.csdnimg.cn/img_convert/15e7616c8fbb4d98cdfdb094541f3ece.png)
Python UI自动化 —— 关键字+excel表格数据驱动
步骤: 1. 对selenium进行二次封装,创建关键字的库 2. 准备一个表格文件来写入所有测试用例步骤 3. 对表格内容进行读取,使用映射关系来对用例进行调用执行 4. 执行用例 1. 对selenium进行二次封装,创建关键字的库 from time imp…...
![](https://img-blog.csdnimg.cn/img_convert/f7f22b80e9e30f5077f2a2fdbe9213d6.png)
AI:06-基于OpenCV的二维码识别技术的研究
二维码作为一种广泛应用于信息传递和识别的技术,具有识别速度快、容错率高等优点。本文探讨如何利用OpenCV库实现二维码的快速、准确识别,通过多处代码实例展示技术深度。 二维码作为一种矩阵型的条码,广泛应用于各个领域,如商品追溯、移动支付、活动签到等。二维码的快速…...
![](https://www.ngui.cc/images/no-images.jpg)
Spring MVC Http Event Stream
什么是 Http Event Stream Event Stream 技术是一种实现服务器推送事件的方法,它通过在一个持续的 HTTP 连接上发送事件流来实现推送。具体来说,服务器发送一些事件到客户端,并将这些事件封装成一些指定格式的文本流。客户端通过监听这个流&…...
![](https://img-blog.csdnimg.cn/5c5bdb021ef74d06bd3bf7e38bf69966.png)
2023年亲测有效----树莓派启动时自动邮件上报ip
2023年亲测 树莓派启动时自动邮件上报ip 首先开启qq邮箱smtp服务shell文件内容启动自动执行python文件注意事项 首先开启qq邮箱smtp服务 然后点击开启就会有授权码 shell文件内容 在自己的shell里,运行echo $PATH,把内容覆盖下面的path。 功能 作用就…...
![](https://img-blog.csdnimg.cn/204c5ce72a5044a3bf5579eb4fcd8687.png)
Direct3D颜色
在Direct3D中颜色用RGB三元组来表示,RGB数据可用俩种不同的结构来保存,第一种是D3DCOLOR,它实际上与DWORD类型完全相同,共有32位,D3DCOLOR类型种的各位被分成四个8位项,每项存储了一种颜色分量的亮度值。 由…...
![](https://img-blog.csdnimg.cn/6df2bb958e2b46ab828658cc73d4b781.png)
LLM - 大模型速递 Baichuan2 快速入门
目录 一.引言 二.模型探索 1.模型下载 2.模型结构 ◆ Baichuan-1-13B 结构 ◆ Baichuan-2-13B 结构 3.模型测试 ◆ Baichuan-2-13B Chat 推理 ◆ Baichuan-2-13B 显存 4.模型量化 ◆ 在线量化 ◆ 离线量化 ◆ 量化效果 5.模型迁移 三.模型微调 …...
![](https://www.ngui.cc/images/no-images.jpg)
DB2和MYSQL的LOAD原理和比较测试
DB2 load的过程: (1)、装入阶段 装入阶段将源数据解析成物理数据页的格式,直接装入到数据页中。必要时还收集索引键和表统计信息。 (2)、构建索引阶段 根据在装入阶段收集的索引键创建表索引。 (…...
![](https://www.ngui.cc/images/no-images.jpg)
redisson常用api
redisson提供了很多对象类型的api,下面介绍下一些常用的对象api。 RBucket 可操作任何对象的api,前提是要确定好泛型,方法比较少。大小限制为512Mb。 RBucket<AnyObject> bucket redisson.getBucket("anyObject");bucket…...
![](https://img-blog.csdnimg.cn/cc66a24261694eb5b59c98388cd42920.png)
MySQL——数据库以及数据表的创建
创建数据库 回到刚才创建数据库的问题,我们在创建数据库的时候可以通过添加一个参数,这个参数的意义在于当我们创建的数据库已经存在的时候则不会创建,也不会报错,如果不使用这个参数,则我们在重复创建一个已经存在的…...
![](https://img-blog.csdnimg.cn/f3aaac088f9b499f9411c02f58583873.png)
智能配电房管理
智能配电房管理依托电易云-智慧电力物联网,利用先进技术手段,对配电房进行智能化、自动化的管理,以提高配电房的安全性、可靠性和效率。 智能配电房管理包括: 1.实时监测:通过传感器、监控设备等手段,对配…...
![](https://www.ngui.cc/images/no-images.jpg)
php如何解决高并发的问题?
在PHP中解决高并发问题可以采取以下几种策略: 使用缓存:通过使用缓存技术,可以将经常访问的数据存储在内存中,减轻数据库或其他资源的压力。常见的缓存技术包括Memcached和Redis。PHP提供了与这些缓存服务器进行交互的扩展和库。 …...
![](https://www.ngui.cc/images/no-images.jpg)
Linux操作系统
线程竞争 那么初始化一个整型为 0,使用一万个线程,每个线程都对该整型加 1,最后结果不一定会是 10000。这是因为整型变量的赋值操作不是原子操作,也就是说它不是一个不可分割的操作,而是由多条指令组成的。例如&#…...
![](https://www.ngui.cc/images/no-images.jpg)
华为OD:VLAN资源池
题目描述: VLANO 是一种对局域网设备进行逻辑划分的技术,为了标识不同的VLAN,引入VLAN ID(1-4094之间的整数)的概念。 定义一个VLAN ID的资源池(下称VLAN资源池),资源池中连续的VLAN用开始VLAN-结束VLAN表…...
![](https://img-blog.csdnimg.cn/20200212232326780.png)
深圳 福田 网站建设/seo排名
文章目录一、需求及分析二、过滤器三、xml配置四、测试sevlet一、需求及分析 (1)对录入的数据进行敏感词汇过滤。 (2)敏感词汇参考 敏感词汇.txt文档 (3)如果是敏感词汇,替换为"***"。 分析:使用代理模式对request对象进行增强,增强获取参数相…...
![](/images/no-images.jpg)
软件开发外包app/seo关键字优化教程
$(#subtabs a).each(function (i, ele) { var href $(ele).attr("href"); if (location.href.indexOf(href) > -1) { $(".tab").removeClass("now-tab"); $(ele).parent().addClass(now-tab); } });...
![](https://www.oschina.net/img/hot3.png)
wordpress 简单主题/免费个人网站怎么建立
为什么80%的码农都做不了架构师?>>> --查询死锁 select request_session_id spid, OBJECT_NAME(resource_associated_entity_id) tableName from sys.dm_tran_locks where resource_typeOBJECT --杀死单个死锁 kill spid--在master中创建删除指定数据…...
![](https://img-blog.csdnimg.cn/img_convert/21406af854593a765ea158b1ad477229.png)
做水印的网站/南昌seo快速排名
个人使用的人工智能产品个人/家用:Ems——帮你找到最合适的居住地Bridge Kitchen——教你一步步做菜的厨房助理UnifyID ——通过你走路、打字和坐姿进行身份认证的工具工作:Carly——帮你管理来电ETCH——帮你管理人际关系并且形成可搜索的数据库Findo …...
![](/images/no-images.jpg)
网站建设案例 算命网站/搜狗seo刷排名软件
做过一个小项目,其中实现了摇一摇功能和刮一刮功能还有播放背景音乐等 摇一摇功能主要用到加速度传感器:Sensor.TYPE_ACCELEROMETER 摇一摇功能主要是监听手机加速度变化,当超过设定的某一值时,即触发事件。 12345678910111213141…...
![](https://images2015.cnblogs.com/blog/827512/201511/827512-20151125154541874-1354543769.jpg)
怎么建设网站赚钱手机/怎么百度推广
新建信息布局:自动出来的是系统的组件,里面是listview,写ontextchanglis也行<LinearLayout xmlns:android"http://schemas.android.com/apk/res/android" android:layout_width"match_parent" android:layout_height&…...