Redis学习笔记(六)Redis数据存储类型之set

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: Redis学习笔记(六)Redis数据存储类型之set

Set


基本操作


(1)添加数据 sadd key member1 member2…


(2)获取全部数据 smembers key


(3)删除数据


srem key member1 member2…


(4) 获取集合数据总量scard key


(5)判断集合中是否包含指定数据 sismember key member


(6)获取全部数据 smembers key


(7) 求两个集合的交,并,差集 sinter key1 key2


sunion key1 key2


sdiff key1 kry2


(8)求两个集合的交,并,差集并存储到指定集合中


sinterstore destionation key1 key2


sunionstore destionation key1 key2


sdiffstore destionation kry1 key2


(9)把指定数据从原始集合中移动到目标集合中 smove source destionation member


应用场景实例:


1.随机推送内容,增加用户留存度


将用户已经很感兴趣的方面抽走,之后推送用户未曾关注方面的热点信息,大体结构如下:


sadd news n1


sadd news n2


sadd news n3


sadd news n4


spop news 2


srandmember news 2


2.一个用户有多个角色,每个角色又有多种权限,查询某用户的所有权限,判断该用户是否享有该权限。


大体结构如下:


//添加角色权限信息


sadd rid:001 insert


sadd rid:001 update


sadd rid:002 getall


sadd rid:002 insert


sadd rid:002 delete


//将某用户的所有角色操作进行合并


sunionstore user:001 rid:001 rid:002


//查看某用户是否具有该项操作权限


smembers user:001


sismember user:001 insert


3.记录网站的访问量PV,独立访问UV,独立IP


PV:网站被访问次数,可通过刷新页面提高


UV:网站被不同用户访问,课通过cookie统计访问量,相同用户切换IP地址不变


IP:网站被不同IP地址访问的总次数,可通过IP地址统计访问量,相同IP不同用户访问,IP不变


PV可以直接通过String的incr进行实现


UV大体结构如下:


sadd cookie 4444


sadd cookie 4445


sadd cookie 4446


scard cookie


IP大体结构如下:


sadd ips 1.2.3.4


sadd ips 2.3.3.4


sadd ips 2.36.58.1


scard ips


相关文章
|
存储 缓存 Java
干翻Mybatis源码系列之第八篇:Mybatis二级缓存的创建和存储
干翻Mybatis源码系列之第八篇:Mybatis二级缓存的创建和存储
|
SQL 缓存 Java
如何判断mybatis 开启二级缓存 和二级缓存详细讲解
如何判断mybatis 开启二级缓存 和二级缓存详细讲解
420 0
|
缓存 Java 数据库连接
MyBatis一级缓存详细讲解
MyBatis一级缓存详细讲解
165 0
|
4月前
|
存储 缓存 NoSQL
mybatisplus一二级缓存
MyBatis-Plus 继承并优化了 MyBatis 的一级与二级缓存机制。一级缓存默认开启,作用于 SqlSession,适用于单次会话内的重复查询;二级缓存需手动开启,跨 SqlSession 共享,适合提升多用户并发性能。支持集成 Redis 等外部存储,增强缓存能力。
|
缓存 Java 数据库连接
mybatis复习05,mybatis的缓存机制(一级缓存和二级缓存及第三方缓存)
文章介绍了MyBatis的缓存机制,包括一级缓存和二级缓存的配置和使用,以及如何整合第三方缓存EHCache。详细解释了一级缓存的生命周期、二级缓存的开启条件和配置属性,以及如何通过ehcache.xml配置文件和logback.xml日志配置文件来实现EHCache的整合。
mybatis复习05,mybatis的缓存机制(一级缓存和二级缓存及第三方缓存)
|
8月前
|
缓存 Java 数据库连接
Mybatis一级缓存、二级缓存详讲
本文介绍了MyBatis中的查询缓存机制,包括一级缓存和二级缓存。一级缓存基于同一个SqlSession对象,重复查询相同数据时可直接从缓存中获取,减少数据库访问。执行`commit`操作会清空SqlSession缓存。二级缓存作用于同一namespace下的Mapper对象,支持数据共享,需手动开启并实现序列化接口。二级缓存通过将数据存储到硬盘文件中实现持久化,为优化性能,通常在关闭Session时批量写入缓存。文章还说明了缓存的使用场景及注意事项。
300 7
Mybatis一级缓存、二级缓存详讲
|
XML 缓存 Java
MyBatis二级缓存解密:深入探究缓存机制与应用场景
MyBatis二级缓存解密:深入探究缓存机制与应用场景
640 2
MyBatis二级缓存解密:深入探究缓存机制与应用场景
|
缓存 Java 数据库连接
【Mybatis】说一下 mybatis 的一级缓存和二级缓存
【Mybatis】说一下 mybatis 的一级缓存和二级缓存
|
SQL Java 关系型数据库
MyBatisPlus学习笔记(SpringBoot版)
MyBatisPlus学习笔记(SpringBoot版)
689 0
|
缓存 Java 数据库连接
SpringBoot整合MyBatis注解版并开启二级缓存
SpringBoot整合MyBatis注解版并开启二级缓存
541 1
下一篇
oss云网关配置