redis
文章平均质量分 83
guotianqing
这个作者很懒,什么都没留下…
展开
-
Redis集群指定主从关系及动态增删节点
集群创建我们常用以下命令创建集群:redis-cli --cluster create 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 --cluster-replicas 1这样就创建了一个具有3个主节点和3个从节点的集群。其中,我们虽然指定了每个主节点都有一个从节点,但哪个是7000的从节点,却是随机分配的,直到集群创建完毕,才能确定是7003、7004还是700原创 2021-08-18 13:56:22 · 8749 阅读 · 3 评论 -
Redis集群删除和重建
删除Redis集群创建好后,一般会有以下文件生成:$ tree.├── appendonly.aof├── dump.rdb├── nodes-7000.conf├── redis.conf└── redis-server0 directories, 5 files其中,nodes-*.conf记录了Redis集群的信息。要想删除一个集群,首先关闭Redis服务,方法如下:redis-cli -h 127.0.0.1 -p 7000 shutdown关闭所有集群上节点后,进入原创 2021-08-13 17:28:04 · 7157 阅读 · 0 评论 -
浅谈Redis延迟测试方法
简介使用Redis的小伙伴们都希望能够获取最大的性能收获,不管什么操作,越快越好。然而,在实际的使用中,却发现有些指令的执行并不像想象中的那样flash。怎么办?我觉得首先需要回答下面这个问题:到底是Redis本身慢了,还是业务逻辑性能出了问题?本文主要针对第一种情况,来进行一下Redis延迟的基准性能测试。如果基准测试没有问题,那么Redis自身大概是没有什么问题的,就要检查一下业务逻辑或者使用的指令是否是慢指令了。基本延迟下面的测试都是使用 redis-cli 客户端进行,基础命令如原创 2021-04-09 18:33:24 · 3835 阅读 · 0 评论 -
浅谈Redis分布式锁及redlock
锁锁是一个与多线程编程如影随形的技术。多线程是为了充分利用多核CPU,发挥出并行进程的效率。锁是为了在多线程编程中保证共享资源的安全性。得不到正确结果的程序,再快也没有用。但,使用锁,就会降低程序的性能。因为在有锁的地方,多个线程也必然顺序执行。所以,现在也有一些使用无锁队列的方式来保证多线程安全。对于只有一个客户端操作Redis实例时,在多线程的环境中,可以使用事务和WATCH组成的乐观锁来解决相关的并发问题。但是,在分布式系统,当多个客户端同时操作Redis时,可能就需要分布式锁才能保原创 2021-03-23 08:32:30 · 550 阅读 · 1 评论 -
浅谈Redis事务解决并发问题
简介和其他大部分的 NoSQL 不同,Redis 是存在事务的,尽管它没有数据库那么强大,但是它还是很有用的,尤其是在那些需要高并发的网站当中。使用 Redis 读/写数据要比数据库快得多,如果使用 Redis 事务在某种场合下去替代数据库事务,则可以在保证数据一致性的同时,大幅度提高数据读/写的响应速度。在 Redis 中,存在多个客户端同时向 Redis 系统发送命令的可能性,因此同一个数据,可能在不同的时刻被不同的线程所操纵,这样就出现了并发下的数据一致的问题。为了保证异性数据的安全性,Re原创 2021-03-15 18:55:17 · 1336 阅读 · 2 评论 -
Redis 6.2.0单机、主从、哨兵到集群
单机Redis存在的问题Redis单机部署简单方便,只需下载编译,启动服务即可使用。一个Redis服务就是一个Redis实例,对应于一个进程,Redis6.2版本支持多线程,但多线程只是用于网络和IO,执行命令依然是单线程。一般情况下,使用一个Redis实例进行测试是足够的。但在生产环境下,随着业务量增加,单机版Redis逐渐会暴露出以下问题:存储能力局限于单机内存,扩容不便Redis实例宕机后无法持续提供服务,达不到高可用所有读写操作单机承受,可能成为并发性能瓶颈这时候,Redis主原创 2021-03-09 18:20:29 · 1697 阅读 · 0 评论 -
Redis性能问题排查方法及优化
查看Redis各项指标首先要能够连接到Redis并获取性能相关的指标。本文使用redis-cli客户端指令连接到Redis,使用info [section]命令获取相关指标。不指定section时,会获取所有10项指标:ServerClientsMemoryPersistenceStatsReplicationCPUModulesClusterKeyspace也可以指定section为其中之一,这样只会输出相关内容:下面分析一下可能造成性能问题的指标。基准性能我们原创 2021-03-05 15:25:08 · 2647 阅读 · 0 评论 -
Ubuntu18.04:Redis最新版本从安装到卸载
默认安装使用Ubuntu18.04,默认安装Redis方式如下:sudo apt install -y redis-server默认方式会把Redis安装在/usr/bin/下:# whereis redis-serverredis-server: /usr/bin/redis-server /usr/share/man/man1/redis-server.1.gz但是,这里方式安装的Redis可能不是最新版本的。如我的机器上安装的版本是4.0.9:# redis-cli -vred原创 2021-02-25 19:47:09 · 1921 阅读 · 0 评论 -
redis实用操作小结
键的命名通常情况下是使用冒号来划分键名,如"user原创 2019-06-24 18:22:50 · 611 阅读 · 0 评论 -
redis基础入门
是什么Redis(REmote DIctionary Server)是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类...原创 2019-07-02 14:51:42 · 206 阅读 · 0 评论