redis
文章平均质量分 91
java播客
这个作者很懒,什么都没留下…
展开
-
Redis开发规范看这篇就够用了
一、键值设计1. 1 key名定义规则【建议】: 可读性和可管理性与不可重复性以业务名(或数据库名或微服务名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名(或子业务名称):idorder:sku:1001举例:上面定义是定单业务下面的sku的id作为缓存key【建议】:简洁性保证语义的前提下,控制key的长度,当key较多时,内存占用也不容忽视,例如:user:{uid}:friends:messages:{mid}简化为u:{uid}:fr:m:{mid}【强制】原创 2021-02-08 14:21:17 · 433 阅读 · 0 评论 -
基于Spring Boot2.x使用Redis(Lettuce)详细教程---Redis的开发规范 (十)
10.1、键值设计1、key名设计可读性和可管理性以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:idugc:video:1简洁性保证语义的前提下,控制key的长度,当key较多时,内存占用也不容忽视,例如:user:{uid}:friends:messages:{mid}简化为u:{uid}:fr:m:{mid}。不要包含特殊字符反例:包含空格...原创 2020-03-14 21:54:02 · 1195 阅读 · 0 评论 -
基于Spring Boot2.x使用Redis(Lettuce)详细教程---Redis分布式锁(九)
9.1 分布式锁随着互联网的兴起,现代软件发生了翻天覆地的变化,以前单机的程序,已经支撑不了现代的业务。无论是在抗压,还是在高可用等方面都需要多台计算机协同工作来解决问题。现代的互联网系统都是分布式部署的,分布式部署确实能带来性能和效率上的提升,但为此,我们就需要多解决一个分布式环境下,数据一致性的问题。当某个资源在多系统之间共享的时候,为了保证大家访问这个资源数据是一致的,那么就必须要求在同...原创 2020-03-14 21:50:23 · 2814 阅读 · 0 评论 -
基于Spring Boot2.x使用Redis(Lettuce)详细教程---Redis 发布订阅 (八)
8.1 应用场景一般来说,消息队列有两种场景,一种是发布者订阅者模式,一种是生产者消费者模式。利用redis这两种场景的消息队列都能够实现。定义:生产者消费者模式:生产者生产消息放到队列里,多个消费者同时监听队列,谁先抢到消息谁就会从队列中取走消息;即对于每个消息只能被最多一个消费者拥有。 发布者订阅者模式:发布者生产消息放到队列里,多个监听队列的消费者都会收到同一份消息...原创 2020-03-14 21:47:10 · 1557 阅读 · 0 评论 -
基于Spring Boot2.x使用Redis(Lettuce)详细教程---Redis数据类型之有序集合(sorted set) (七)
1、 Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。2、不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。3、有序集合的成员是唯一的,但分数(score)却可以重复。4、集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最大的成员数为 232 - 1 (4294967295...原创 2020-03-14 21:43:10 · 471 阅读 · 0 评论 -
基于Spring Boot2.x使用Redis(Lettuce)详细教程---Redis数据类型之Set集合 (六)
Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。6.1 应用场景1.利用唯一性,可以存取当天的活跃用户列表、可以统计访问网站的所有独立 IP。2.利用集合操作,以非常方便的实现如共同关注、共同喜好、二度好友等功能。对上面的所有集合操作,你还可以使用不同的命令选择将结果返回给客户端还是存储到一个新的集合中。可以取不同兴趣圈子的交集...原创 2020-03-14 21:38:43 · 506 阅读 · 0 评论 -
基于Spring Boot2.x使用Redis(Lettuce)详细教程---Redis数据类型之列表(List) (五)
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素) ,类似JAVA中的LinkedList5.1 应用场景1、对数据量大的集合数据删减列表数据显示、关注列表、粉丝列表、留言评价等…分页、热点新闻(Top5)等利用LRANGE还可以很方便的...原创 2020-03-14 21:32:17 · 719 阅读 · 0 评论 -
基于Spring Boot2.x使用Redis(Lettuce)详细教程---Redis数据类型哈希(Hash) (四)
Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。 Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿),可以看成具有KEY和VALUE的MAP容器,该类型非常适合于存储值对象的信息,如:uname,upass,age等。该类型的数据仅占用很少的磁盘空间(相比于JSON)。4.1 应用场景保存纪录中的详细信息。比...原创 2020-03-14 21:26:26 · 938 阅读 · 0 评论 -
基于Spring Boot2.x使用Redis(Lettuce)详细教程---Redis数据类型之String类型 (三)
string是redis最基本的类型,一个key对应一个value。string类型是Redis最基本的数据类型,一个键最大能存储512MB。3.1 应用场景String通常用于保存单个字符串或JSON字符串数据,常用的场景有:统计网站访问数量、当前在线人数、微博数、粉丝数等,全局递增ID等 。3.2 代码示例代码:com.javablog.redis.demo.service.imp...原创 2020-03-14 20:28:36 · 359 阅读 · 0 评论 -
基于Spring Boot2.x使用Redis(Lettuce)详细教程---RedisTemplate与StringRedisTemplate的区别 (二)
区别:1.两者数据各自存,各自取,数据不互通。RedisTemplate不能取StringRedisTemplate存入的数据。StringRedisTemplate不能取RedisTemplate存入的数据 2.序列化策略不同。RedisTemplate采用JDK的序列化策略StringRedisTemplate采用String的序列化策略分析:RedisTemplate:...原创 2020-03-14 20:21:32 · 535 阅读 · 0 评论 -
基于Spring Boot2.x使用Redis(Lettuce)详细教程---Redis使用环境配置 (一)
1.1 maven配置新建SpringBoot2.0.3的WEB工程,在MAVEN的pom.xml文件中加入如下依赖pom文件:<dependencies> <!--默认是lettuce客户端--> <dependency> <groupId>org.springframework.boot&...原创 2020-03-14 19:55:41 · 1816 阅读 · 0 评论 -
常用的redis客户端Jedis 、Lettuce 、Redisson 介绍以及对比
Jedis api 在线网址:http://tool.oschina.net/uploads/apidocs/redis/clients/jedis/Jedis.htmlredisson 官网地址:https://redisson.org/redisson git项目地址:https://github.com/redisson/redissonlettuce 官网地址:https://l...原创 2020-02-16 08:42:48 · 6550 阅读 · 0 评论