Redis 学习笔记
文章平均质量分 80
Redis 学习记录
南淮北安
好好学习
展开
-
【Reids 学习】学习 Redis 一篇文章就够了(珍藏版)
文章目录一、学习目录二、扩展目录一、学习目录二、扩展目录原创 2020-10-27 16:18:20 · 1030 阅读 · 0 评论 -
【Redis 学习】Redis事务秒杀案例
文章目录一、前期准备二、开始模拟三、连接池解决超时问题四、乐观锁解决超卖问题五、LUA脚本解决库存遗留问题1. LUA脚本2. LUA脚本在Redis中的优势3. LUA脚本实现一、前期准备为了模拟Redis事务中的并发操作,需要安装工具CentOS6 默认安装CentOS7需要手动安装本机是CentOS7所以手动安装联网情况下:联网:yum install httpd-tools无网络情况下:(1) 进入cd /run/media/root/CentOS 7 x86_64/Pac原创 2022-05-31 00:45:00 · 910 阅读 · 1 评论 -
【Reids 学习】新数据类型 Geospatial 学习
文章目录一、简介二、命令1. geoadd2. geopos3. geodist4. georadius一、简介Redis 3.2 中增加了对GEO类型的支持。GEO,Geographic,地理信息的缩写。该类型,就是元素的2维坐标,在地图上就是经纬度。redis基于该类型,提供了经纬度设置,查询,范围查询,距离查询,经纬度Hash等常见操作。二、命令1. geoadd(1)格式geoadd<key>< longitude><latitude><me原创 2022-05-25 10:45:42 · 658 阅读 · 0 评论 -
【Reids 学习】新数据类型 HyperLogLog 学习
文章目录一、简介二、命令1. pfadd2. pfacount3. pfmerge一、简介在工作当中,我们经常会遇到与统计相关的功能需求,比如统计网站PV(PageView页面访问量),可以使用Redis的incr、incrby轻松实现。但像UV(UniqueVisitor,独立访客)、独立IP数、搜索记录数等需要去重和计数的问题如何解决?这种求集合中不重复元素个数的问题称为基数问题。解决基数问题有很多种方案:(1)数据存储在MySQL表中,使用distinct count计算不重复个数(2)原创 2022-05-25 10:45:12 · 646 阅读 · 0 评论 -
【Reids 学习】新数据类型 Bitmaps 学习
文章目录一、简介二、命令1. setbit2. getbit3. bitcount4. bitop三、Bitmaps与set对比一、简介现代计算机用二进制(位) 作为信息的基础单位, 1个字节等于8位, 例如“abc”字符串是由3个字节组成, 但实际在计算机存储时将其用二进制表示, “abc”分别对应的ASCII码分别是97、 98、 99, 对应的二进制分别是01100001、 01100010和01100011,如下图合理地使用操作位能够有效地提高内存使用率和开发效率。Redis提供了Bitm原创 2022-05-25 10:44:42 · 741 阅读 · 0 评论 -
【Reids 学习】Redis中的事务学习
文章目录一、Redis 的事务定义二、multi、exec、discard三、事务的错误处理四、事务冲突的问题1. 悲观锁2. 乐观锁3. watch key 实现乐观锁4. unwatch五、Redis 事务三大特性一、Redis 的事务定义Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。Redis事务的主要作用就是串联多个命令防止别的命令插队。二、multi、exec、discard从输入Multi命令原创 2022-05-25 10:44:04 · 663 阅读 · 0 评论 -
【Reids 学习】发布和订阅
文章目录一、什么是发布和订阅?二、Redis的发布和订阅三、发布订阅命令实现一、什么是发布和订阅?Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。Redis 客户端可以订阅任意数量的频道。二、Redis的发布和订阅(1)客户端可以订阅频道如下图(2)当给这个频道发布消息后,消息就会发送给订阅的客户端三、发布订阅命令实现(1)打开一个客户端订阅channel1:SUBSCRIBE channel1(2)打开另一个原创 2022-05-23 22:20:18 · 663 阅读 · 0 评论 -
【Reids 学习】配置文件学习
文章目录一、Units 单位二、INCLUDES包含三、NETWORK 网络相关配置1. bind2. protected-mode3. port4. tcp-backlog5. timeout6. tcp-keepalive四、GEBERAL 通用1. daemonize2. pidfile3. loglevel4. logfile5. databases 16五、SECURITY安全六、LIMITS限制1. maxclients2. maxmemory3. maxmemory-policy4. maxm原创 2022-05-23 17:19:57 · 780 阅读 · 0 评论 -
【Reids 学习】有序集合 Zset 学习
文章目录一、简介二、常用命令三、数据结构四、跳跃表一、简介Redis有序集合zset与普通集合set非常相似,是一个没有重复元素的字符串集合。不同之处是有序集合的每个成员都关联了一个评分(score),这个评分(score)被用来按照从最低分到最高分的方式排序集合中的成员。集合的成员是唯一的,但是评分可以是重复了 。因为元素是有序的, 所以你也可以很快的根据评分(score)或者次序(position)来获取一个范围的元素。访问有序集合的中间元素也是非常快的,因此你能够使用有序集合作为一个没有重复原创 2022-05-23 16:37:52 · 686 阅读 · 0 评论 -
【Reids 学习】哈希 Hash 学习
文章目录一、简介二、常用命令三、数据结构一、简介Redis hash 是一个键值对集合。Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。类似Java里面的Map<String,Object>用户ID为查找的key,存储的value用户对象包含姓名,年龄,生日等信息,如果用普通的key/value结构来存储二、常用命令(1)hset <key><field><value>给<key&g原创 2022-05-23 15:14:34 · 609 阅读 · 0 评论 -
【Reids 学习】集合 Set 学习
文章目录一、简介二、常用命令三、数据结构一、简介Redis set对外提供的功能与list类似是一个列表的功能,特殊之处在于set是可以自动排重的,当你需要存储一个列表数据,又不希望出现重复数据时,set是一个很好的选择,并且set提供了判断某个成员是否在一个set集合内的重要接口,这个也是list所不能提供的。Redis的Set是string类型的无序集合。它底层其实是一个value为null的hash表,所以添加,删除,查找的复杂度都是O(1)。一个算法,随着数据的增加,执行时间的长短,如原创 2022-05-23 14:57:22 · 618 阅读 · 0 评论 -
【Reids 学习】列表 List 学习
文章目录一、简介二、常用命令三、数据结构一、简介单键多值Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。它的底层实际是个双向链表,对两端的操作性能很高,通过索引下标的操作中间的节点性能会较差。二、常用命令(1)lpush/rpush <key><value1><value2><value3> … 从左边/右边插入一个或多个值。(2)lpop/rpop <key>从原创 2022-05-23 14:45:10 · 715 阅读 · 0 评论 -
Redis 案例
文章目录一、案例需求二、代码一、案例需求提供index.html页面,页面中有一个省份 下拉列表当 页面加载完成后 发送ajax请求,加载所有省份需要注意:redis 常用于缓存一些不经常发生变化的数据* 数据库的数据一旦发生改变,则需要更新缓存。* 数据库的表执行增删改的相关操作,需要将redis缓存数据情况,再次存入* 在service对应的增删改方法中,将redis数据删...原创 2020-04-09 18:27:45 · 568 阅读 · 0 评论 -
一篇文章带你搞定 jedis 连接池:JedisPool的学习
文章目录一、使用方式二、连接池工具类一、使用方式1. 创建JedisPool连接池对象2. 调用方法 getResource()方法获取Jedis连接public class RedisTest { @Test public void test() {// 1. 创建一个配置对象 JedisPoolConfig config = new J...原创 2020-04-09 11:23:01 · 1244 阅读 · 3 评论 -
【Reids 学习】Java 客户端 Jedis 学习
Jedis: 一款 java 操作 redis 数据库的工具,类似于 JDBC文章目录一、使用步骤二、Jedis 操作各种 Redis 中的数据结构一、使用步骤1. 下载jedis的jar包2. 使用public class RedisTest { @Test public void test() {// 1. 获取连接 Jedis je...原创 2020-04-09 10:27:22 · 395 阅读 · 0 评论 -
Redis 持久化机制
redis 是一个内存数据库,当 redis 服务器重启,获取电脑重启,数据会丢失,我们可以将 redis 内存中的数据持久化保存到硬盘的文件中。文章目录一、RDB 默认方式二、AOF 日志记录的方式一、RDB 默认方式RDB:默认方式,不需要进行配置,默认就使用这种机制这种方式在一定的间隔时间中,检测 key 的变化情况,然后持久化数据编辑redis.windwos.conf文件...原创 2020-04-08 23:35:14 · 371 阅读 · 0 评论 -
【Reids 学习】一篇文章带你学会 Redis 的基本命令操作
文章目录一、下载安装二、命令操作1. Redis 的数据结构2. 字符串类型 string3. 哈希类型 hash4. 列表类型 list5. 集合类型 set6. 有序集合类型 sortedset7. 通用命令一、下载安装1. 官网:https://redis.io2. 中文网:http://www.redis.net.cn/3. 解压直接可以使用: * redis.windows....原创 2020-04-08 22:42:03 · 725 阅读 · 0 评论 -
【Reids 学习】认识 NoSQL 和 Redis 一篇文章就够了
文章目录一、基本概念二、NoSQL 和 关系数据库比较三、主流的 NoSQL 产品四、什么是 Redis一、基本概念redis是一款高性能的NOSQL系列的非关系型数据库NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发...原创 2020-04-08 20:51:15 · 1141 阅读 · 0 评论