redis 一些笔记1

redis

  • 一、redis事务
  • 二、管道
    • 2.1 事务与管道的区别
  • 三、主从复制
    • 3.1
    • 3.2 权限细节
    • 3.3 基本操作命令
    • 3.4 常用
      • 3.4.1 一主几从
      • 3.4.2 薪火相传
      • 3.4.3 反客为主
    • 3.5 步骤
    • 3.6 缺点


一、redis事务

放在一个队列里,依次执行,并不保证一致性。与mysql事务不同。
命令:
1、MULTI
2、EXEC
3、DISCARD
4、WATCH
5、UNWATCH
正常执行
在这里插入图片描述

放弃事务
在这里插入图片描述

全体连坐 编译错误 都不执行
在这里插入图片描述

冤头债主 错误的不执行 正确的执行
在这里插入图片描述

监控 监控就有sql事务的意思了,如果监控的值改变了,则所有都不执行在这里插入图片描述

在这里插入图片描述

二、管道

2.1 事务与管道的区别

原子性:事务保证所有命令的原子性,要么全部执行,要么全部放弃。管道不保证原子性,每个命令独立执行。
错误处理:事务中如果存在语法错误,整个事务会失败。管道中如果存在语法错误,只有该命令会返回错误,其它命令仍会执行
使用场景:事务适用于需要原子性保证的操作场景,管道适用于批量发送命令以减少网络延迟的场景。

这里事务具有原子性…??redis事务并不具有原子性啊,一条语句失败(运行时错误)并不影响其他的执行。 待考究…

但是知道应用就行,它们的设计目标和使用场景不同:事务更多用于需要保证顺序执行的场景,而管道则用于提高性能、减少网络延迟的场景。

事务中的操作并不是一起传输到服务器,但是管道中的操作是这样。

三、主从复制

3.1

只有一台机的话,读写性能不好,压力大。
可以使用主从复制,主机做写操作,从机做读操作。减轻主机的读压力。
配从不配主
master以写为主,slave以读为主
当master数据变化时,自动将新的数据异步同步到其他slave数据库。

3.2 权限细节

master如果配置了 requirepass 参数,需要密码登录
slave 需要配置 masterauth来设置检验密码,否则的话master会拒绝slave的访问请求

3.3 基本操作命令

info replication   查看复制节点的主从关系和配置信息replicaof 主库IP 主库端口  一般写入进redis.conf配置文件内,在运行期间修改slave节点的信息,如果该数据库已经某个数据库的从数据库,那么会停止和原主数据库的同步关系转而和新的主数据库同步slaveof 主库IP 主库端口  一般在命令行执行。slaveof no one      使当前数据库停止与其他数据库的同步,升级为主数据库

3.4 常用

3.4.1 一主几从

在这里插入图片描述

从机 一定要加上 -p 端口号 不然就是默认6397.

在这里插入图片描述
答案:
1 从机不可以执行写命令。
2 主机先开启并且已经有数据了,这时候从机才连上,不要紧,从机会有一个主机的完整快照,以便与主机数据一致,并且从机如果原始有数据的话,会被主机的内容覆盖掉。
3 从机不会上位,只会原地听命。
4 主机shutdown之后,,重启后主从关系依然在,从机也能够顺利复制。
5 可以
但是这都是建立在是在配置文件中写死了主从关系的,如果使用slaveof 主库IP 主库端口 一般在命令行执行 在命令行执行的话,从机shutdown之后,主从关系就没有了。

3.4.2 薪火相传

一主几从的话,主机需要传相同的内容给不同的从机,也会影响主机性能。
在这里插入图片描述
在这里插入图片描述

由于192.168.111.172仍然是一个从机,所以还是只能读,不能写。

3.4.3 反客为主

谁也不依附,自己变为master,之前的数据仍然存在。
在这里插入图片描述

3.5 步骤

在这里插入图片描述
在这里插入图片描述

3.6 缺点

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/851911.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

光储充一体化充电站:能源革新的绿色引擎

在这个科技日新月异的时代,一场绿色能源的革命正悄然兴起。 光储充一体化充电站,作为这场革命中的璀璨明星,正以其独特的魅力,引领我们走向更加环保、高效的未来。 光储充一体化充电站,顾名思义,将光伏发电…

kotlin之foreach跳出循环

1.创建函数跳出循环。 fun breakTest() {(0..10).forEachIndexed { index, i ->Log.d("test start index$index,i$i")if (index > 7) {return}Log.d("test end index$index,i$i")}}2.通过run语句,将会在if判断语句为true的时候跳出run代…

淘宝/天猫商品详情优惠券获取API 接口

天猫商品优惠券数据API接口是一种用于获取天猫商品优惠券信息的接口。通过该接口,商家或开发者可以获取到商品的优惠券信息,包括优惠券的名称、金额、使用条件等。 该接口的主要参数包括商品ID、优惠券ID等,通过传入这些参数,可以…

争取比ChatGPT多知道一点,如何创建和使用embedding?

如何生成embedding? 这个问题很简单,可以直接问ChatGPT。即使是3.5的版本,也可以得到不错的回复: 我这里贴一下它给出的代码,首先是TensorFlow2版本: 接着是pytorch版本: 这两个版本的embeddin…

node配置热更新nodemon

nodemon 安装 全局或者开发依赖都可以 npm install nodemon -g npm install nodemon -D配置 文件配置nodemon.json {"watch": [ // 改动后需要编译成es5的源文件目录和配置等目录以及文件"./src","./conf",".env"],"ext&quo…

使用ftp上传文件

一. 服务器部分 // 安装 yum install vsftpd -y systemctl start vsftpd// 查看ftp是否安装成功,21号端口是ftp就是安装成功 netstat -nltp | grep 21// 创建用户名和设置用户密码 useradd ftpfile echo "ftpfile" | passwd ftpfile --stdin// 开启ftp的…

【Unity】RPG2D龙城纷争(一)搭建项目、导入框架、前期开发准备

更新日期:2024年6月12日。 项目源码:后续章节发布 免责声明:【RPG2D龙城纷争】使用的图片、音频等所有素材均有可能来自互联网,本专栏所有文章仅做学习和教程目的,不会将任何素材用于任何商业用途。 索引 【系列简介】…

java(JVM)

JVM Java的JVM(Java虚拟机)是运行Java程序的关键部件。它不直接理解或执行Java源代码,而是与Java编译器生成的字节码(Bytecode)进行交互。下面是对Java JVM更详尽的解释: 1.字节码: 当你使用J…

华为网络设备攻击防范

畸形报文攻击防范 攻击行为 畸形报文攻击是通过向交换机发送有缺陷的IP报文,使得交换机在处理这样的IP包时会出现崩溃,给交换机带来损失。 畸形报文攻击主要有如下几种: 没有IP载荷的泛洪攻击 IGMP空报文攻击 LAND攻击 Smurf攻击 TCP标…

Java基础语法包括哪些内容?

Java基础语法包括以下几个方面: 1. 基本概念 类:类是一个模板,描述一类对象的行为和状态。对象:对象是类的一个实例,具有状态和行为。方法:方法是对象的行为,通过方法可以实现对数据的操作。实…

VR虚拟仿真技术模拟还原给水厂内外部结构

在厂区的外围,我们采用VR全景拍摄加3D开发建模的方式,还原了每一处细节,让你仿佛置身于现场,感受那份宁静与庄重。 当你踏入厂区,我们为你精心策划了一条游览路线,从门口到各个重要场景,一一为…

LabVIEW Actor架构特点与适用范围

LabVIEW的Actor架构提供了一种基于消息传递的并行任务管理方式,适合复杂系统的模块化设计。其特点包括高可扩展性、灵活的消息传递和并行处理能力。维护和修改要求较高,适合有一定经验的开发人员。对于中小型项目,可考虑选择更简单的状态机架…

关于 Threejs在宽高一定的页面内绘制

在 el-dialog 页面中使用 Three.js 绘制物体并绑定双击事件。首先&#xff0c;在 el-dialog 中创建一个 canvas 元素用于渲染 Three.js&#xff1b; 在使用的el-dialog页面中使用threejs绘制物体 并给物体绑定双击事件&#xff1b;对应物体之间有联系的绘制箭头线 <templa…

【原创教程】三菱Q与MERLIN II LS激光打标机控制说明

一、控制流程说明 1.硬件连接→2.软件通讯连接→3.编写远程控制PLC程序→4.编写通讯命令。 二、硬件连接1.用RJ45口普通网线将PLC和打标机连接。 三、软件通讯连接 1.打标机侧工控机-更改操作权限-点击菜单栏Setup,在下拉菜单中,点击Level,在下一级菜单点击Supervisor(左下…

关于python的字节串与字符串的转换

1. 背景 我写了一个RC4加密的程序&#xff0c;如下所示。 data b"204EF6D2FB3B" key b123# 加密&#xff08;引用传递&#xff09; dll.RC4_enc_dec(data,key) print(加密结果&#xff1a;,data) # ba\xc0\x8b\xc7\xa3B\xc9c!0\xc8# 解密 dll.RC4_enc_dec(data,…

C++中的结构体——结构体案例1_2

案例描述 学校正在做毕设项目&#xff0c;每位老师指导5名学生&#xff0c;总共有3名老师&#xff0c;需求如下 设计学生和老师的结构体&#xff0c;其中在老师的结构体中&#xff0c;有老师的姓名和一个存放5名学生的数组作为成员 学生的成员有姓名、考试分数&#xff0c;创…

51.Python-web框架-Django开始第一个应用的增删改查

目录 1.概述 2.创建应用 创建app01 在settings.py里引用app01 3.定义模型 在app01\models.py里创建模型 数据库迁移 4.创建视图 引用头 部门列表视图 部门添加视图 部门编辑视图 部门删除视图 5.创建Template 在app01下创建目录templates 部门列表模板depart.ht…

Controller 自动化日志输出

Starter库 1.定义注解 Target(ElementType.METHOD) Retention(RetentionPolicy.RUNTIME) Documented public interface TraceLog {/*** 日志类型** return*/String type() default ""; }2.定义捕获日志接口方法 public interface ITraceLogProcess {void afterThr…

uniapp条件编辑语法

uniapp中的“条件编译”&#xff1a;#ifdef详细解释_uniapp #ifdef-CSDN博客 uniapp 多端兼容 #ifdef #ifndef #endif 和 平台标识 - 简书

计算机图形学入门10:着色

1.真实的世界 经过前面的变换&#xff0c;再到三角形遍历&#xff0c;深度缓存后&#xff0c;屏幕上每个像素都有了对应的颜色&#xff0c;显示的结果大概是如下左图的样子&#xff0c;我们发现物体每个面的颜色都一样&#xff0c;看起来不够真实。而如下右图显得更加真实&…