redis
文章平均质量分 52
coder i++
coder i++分享一下 ,记录一下
展开
-
redis集群原理详解
转载 Redis集群原理详解一、Redis集群介绍: 1、为什么需要Redis集群? 在讲Redis集群架构之前,我们先简单讲下Redis单实例的架构,从最开始的一主N从,到读写分离,再到Sentinel哨兵机制,单实例的Redis缓存足以应对大多数的使用场景,也能实现主从故障迁移。 但是,在某些场景下,单实例存Redis缓存会存在的几个问题: (1)写并发: Redis单实例读写分离可以解决读操作的负载均衡,但对于写操作,仍然是全部落在了master节点上面,在海量数据高并发场景,一个节点转载 2021-07-23 08:07:15 · 1492 阅读 · 0 评论 -
redis 相关网址
redis.io官网microsoftarchive原创 2021-07-22 14:02:18 · 101 阅读 · 0 评论 -
redis 部署模式
redis部署单机主从模式(replication)哨兵模式哨兵模式redis主挂了怎么操作?集群参考链接:link1 https://www.cnblogs.com/xiufengchen/p/10455288.html部署模式 单机、主从、哨兵、Cluster四种部署模式单机启动一个单一的节点即可,但缺乏高可用机制,redis进程若死掉,所有的请求会直逼db,db压力骤增。主从模式(replication)增加一个或多个slave,当主redis发生问题时,可以选一原创 2021-07-17 18:01:22 · 888 阅读 · 2 评论 -
redis redis_sentinel.conf
sentinel.confsentinel1.confsentinel2.confsentinel3.confsentinel1.conf# Example sentinel.conf# port <sentinel-port>port 26371# 守护进程模式daemonize yes# 指明日志文件名# logfile "./sentinel1/sentinel1.log"# 工作路径,sentinel一般指定/tmp比较简单dir "D:\\phpstudy_转载 2021-07-17 15:23:52 · 541 阅读 · 0 评论 -
redis slave.conf
slave.conf只显示差异部分,完整部分请查看# pid filepidfile ./redis_slave.pid# 监听端口port 6371# 指明日志文件名logfile "./redis6371.log"# 设置当本机为slav服务时,设置master服务的IP地址及端口,在Redis启动时,它会自动从master进行数据同步slaveof 127.0.0.1 6379# 当master服务设置了密码保护时,slav服务连接master的密码masterauth zhao原创 2021-07-17 15:21:18 · 172 阅读 · 0 评论 -
redis redis_master.conf
# 守护进程模式daemonize yes # pid filepidfile /var/run/redis.pid# pidfile ./redis.pid# 监听端口port 6379# TCP接收队列长度,受/proc/sys/net/core/somaxconn和tcp_max_syn_backlog这两个内核参数的影响tcp-backlog 511# 一个客户端空闲多少秒后关闭连接(0代表禁用,永不关闭)timeout 0# 如果非零,则设置SO_KEEPALIVE转载 2021-07-17 06:20:07 · 320 阅读 · 0 评论 -
redis setnx
setnx命令,如果有该key值,则设置失败;没有该key设置成功。但由于setnx命令没有过期时间,需要额外对key设置过期时间,但是这是两个操作,不能保证其原子性。如下操作可以保证原子性,并能达到与setnx一样的效果。set key value [ex seconds] [px millisecods] [nx|xx]ex seconds:设置过期时间为seconds秒px millisecods:设置过期时间为milliseconds毫秒nx 只有在键不存在时,才对键进行设置操作。xx原创 2021-07-16 16:39:24 · 394 阅读 · 0 评论 -
redis 分布式锁实现单机场景
分布式锁)分布式锁一般有数据库乐观锁、基于redis的分布式锁以及基于ZooKeeper的分布式锁三种实现方式。必要条件代码实现分布式锁一般有数据库乐观锁、基于redis的分布式锁以及基于ZooKeeper的分布式锁三种实现方式。这里记下redis的分布式锁。必要条件1、互斥性,在任意时刻,只有一个客户端能持有锁。2、不会发生死锁。即使有一个客户端在持有锁的期间崩溃而没有主动解锁,也能保证后续其它客户端能加锁。3、具有容错性。只要大部分的redis节点正常运行,客户端就可以加锁和解锁。4、解原创 2021-06-30 18:01:57 · 341 阅读 · 0 评论 -
redis 总结
redis总结锁解决并发竞争事务cas(check-and-set)watch命令和基于cas的乐观锁持久化锁redis是单进程,单线程,它利用队列技术将并发访问变为串行访问,消除了传统数据库进行串行控制的开销。解决并发竞争redis采用队列模式,将并发访问变为串行访问。它本身没有锁的概念。redis对于多个客户端连接并不存在竞争,但是jedis客户端进行并发访问时会造成连接超时、数据转换错误、阻塞、客户端关闭等问题。这都会造成客户端混乱。解决并发竞争1.客户端角度,对连接进行池化,同时对原创 2021-06-29 17:58:50 · 184 阅读 · 0 评论 -
redis 服务器
服务器统计信息infobgrewriteaofbgsaveclient listclient setname abcclient getnameclient pause timeout 在指定时间内终止运行来自客户端的命令client kill ip:port [id client-id]cluster slots 获取集群节点的映射数组command 获取redis命令详情数组command count 获取redis命令总数time 返回服务器时间command info c原创 2021-06-13 17:09:46 · 106 阅读 · 0 评论 -
redis 脚本及连接
redis使用lua解释器来执行脚本。evaleval script numkeys key[key …] arg [arg …]evalsha sha1 numkeys key [key …] arg [arg …]sript exists script [script …]script kill 杀死正在运行的脚本script flush 从脚本缓存中移除所有脚本script load script将脚本script添加到脚本缓存中,但并不立即执行这个脚本...原创 2021-06-13 15:24:34 · 214 阅读 · 0 评论 -
redis 事务
redis事务一次可执行多个命令,事务中的所有命令都会序列化、按顺序地执行。执行过程中,不会被其它客户端发来的命令请求打断。事务中的命令要么全部执行,要么全不执行。有三个阶段:1.开始事务2.命令入队3.执行事务multi 开始事务discard 取消事务,放弃事务中所有命令exec 执行事务块中命令unwatch 取消watch命令对所有key的监视watch key [key…] 监视一个或多个key,如果在事务执行之前这个(或这些)key被其他命令所改动,那么事务将被打断。wa原创 2021-06-13 12:00:31 · 76 阅读 · 0 评论 -
redis 发布订阅
pub/sub是一种通信模式pub发送消息,sub接收消息。客户端可以订阅任意数量的频道。client1 client2 client3 clientx 订阅channel1,当有新消息通过publish命令发送给channel1时,这个消息会被发送给订阅它的三个客户端。subscribe channel1 channel2 channel3 订阅给定的一个或多个频道的信息unsubscribe channel1 channel2 channel3 指退给定的频道...原创 2021-06-13 10:35:46 · 75 阅读 · 0 评论 -
redis HyperLoglog
2.8.9版本中添加 HyperLogLog(hll)用来做基数统计,优点是在输入元素的数量或体积非常非常大时,计算基数所需的空间总是固定的,并且是很小的。每个hll键只需要花费12kb的内存,就可以计算接近2^64个不同元素的基数。但是hll只会根据输入元素来计算基数,而不会储存输入元素本身,所以它不能像string list hash set zset一样返回元素本身。基数是什么?如数据集{1,3,5,7,9,11,5,7,9},它的基数集为{{1,2,5,7,9,11},基数为5(不重复元素)原创 2021-06-12 17:47:15 · 82 阅读 · 0 评论 -
redis学习
rediskey-value数据库特点:1 支持数据的持久化2 支持简单的key-value类型的数据,同时提供list set zset hash等结构的存储3 支持数据备份 master-slave模式下载 http://www.redis.cn/download.html配置文件 位于安装目录下redis.conf格式CONFIG GET CONFIG_SETTING_NAMECONFIG GET loglevelCONFIG GET *CONFIG SET CONFIG_S原创 2021-06-09 06:05:44 · 180 阅读 · 0 评论