
Redis
长河
为天地立心,为生民立命,为往圣继绝学,为万世开太平.
展开
-
分布式缓存-1
缓存: 可以进行快速数据交换的存储器系统级缓存:硬盘缓存:CPU缓存:内存和缓存的区别:缓存淘汰的几种策略:1.先进先出,FIFO2.最不经常使用, LRU3.最近最少使用,LFU缓存应用场景:使用前提: 应用扛不住用户的并发访问时.缓存的应用场景:1.分布式session2.热点排名3.发布订阅4.分布式锁从单体架构看缓存:......原创 2022-09-01 09:15:25 · 196 阅读 · 0 评论 -
分布式缓存-2
缓存的介绍原创 2022-09-01 09:16:30 · 123 阅读 · 0 评论 -
分布式缓存-3
缓存穿透2.缓存雪崩京东开源了一个热点key的检测项目, Java写的, 可以看看.原创 2022-10-08 09:49:40 · 135 阅读 · 0 评论 -
Jedis实现商品的排序
redis原创 2022-05-05 09:46:25 · 1474 阅读 · 0 评论 -
Redis的Bitmap使用总结- 宣布大事
在日常的开发中, redis的BitMap做过滤非常的方便, 但是存在一些坑, 所以记录下来, 给大家学习下:1. Redis 的 bitmap 的key的长度会影响它的性能, 最大是2的32次方, 要是10位数就是10亿了, 必然比从0开始慢. 例如bitmap set myBit 1 1, 必然会比bitmap set myBit 1000000 1 要快. 单个查询没啥影响, 但是查询的数量一旦大了性能差异就非常大了.2. bitmap 在 redis 中按 string 来存储,因此上.原创 2021-07-01 19:22:11 · 3849 阅读 · 0 评论 -
redis中大Value问题的解决
我们日常在使用redis的时候, 有时会碰到大Value的问题, 超级大的一个Value存到redis中去, 这样其实不好, 我们可以把value进行压缩.下面我们使用java自带的压缩, 对字符串进行压缩./** * 使用gzip压缩字符串 * * @param originString 要压缩的字符串 * @return 压缩后的字符串 */ public static String compress(String originStr.原创 2021-01-04 09:35:38 · 6436 阅读 · 1 评论 -
Redis lua教程
看这个文章之前请确认自己已经掌握了lua 的基本语法 , 如果不会先去看看lua的教程, 很简单, 在基本的操作redis中, 看一下的目录就知道了, 看完前面的部分就暂时够用了: 菜鸟教程https://www.runoob.com/lua/lua-tables.htm...原创 2019-09-03 15:28:02 · 1113 阅读 · 0 评论 -
Memcached基础以及centos上环境搭建
Memcached基本的工作原理 Memcached是以守候程序的方式运行于一个或者多个服务器中,随时等待客户端的链接请求,通过启动Memcached服务端,配置相应的监听IP、端口等参数,客户端可通过指定的服务器IP 将数据以key-value的方式存储到Memcached实例中。 如下图所示,有N个Memcached实例部署在一台专门的机器上,应用程序在查询数据时首先去Memcac...原创 2019-03-13 11:11:51 · 250 阅读 · 0 评论 -
spring boot 整合redis
这两天的优快云的博客编辑器有毒.......格式稀巴烂...1.创建springboot.pom文件如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XM...原创 2018-04-26 16:06:03 · 298 阅读 · 0 评论 -
进阶的Redis之哈希分片原理与集群实战
前面介绍了《进阶的Redis之数据持久化RDB与AOF》和《进阶的Redis之Sentinel原理及实战》,这次来了解下Redis的集群功能,以及其中哈希分片原理。集群分片模式如果Redis只用复制功能做主从,那么当数据量巨大的情况下,单机情况下可能已经承受不下一份数据,更不用说是主从都要各自保存一份完整的数据。在这种情况下,数据分片是一个非常好的解决办法。Redis的Cluster正...转载 2018-12-10 17:27:10 · 453 阅读 · 0 评论 -
Redis的java客户端的封装
因为再使用redis的过程中,开发A设置了 name-"zhaojun" 开发B设置了name-"zk",这就造成了A,B一个人的数据丢失,会存在key 的冲突,冲突了又只有在获取的时候才知道,这种问题还再排查一遍.为了避免这种情况,我们在key的前面就上两层的字符串,避免key的重复,同时对key的存在时间进行一层封装.具体看代码:1.接口的封装public interface ...原创 2018-12-04 09:56:03 · 863 阅读 · 2 评论 -
Redission实现分布式锁
分布式锁是啥,就是在分布式环境下来进行资源的锁定,在单台tomca下面,一般没有这种竞争条件,但是多台tomcat就有了竞争条件了,例如定时任务,不可能让多个tomcat 都去执行定时任务....Redisson分布式锁,就是对唯一管理,获取到了就获取到了锁,没有得到就没获取锁,不能执行,当然了,还涉及到锁的释放,超时等当然了,我们也可以自己使用redis自己写一个分布式锁,是没有问题的,...原创 2018-11-30 14:53:48 · 24168 阅读 · 9 评论 -
Spring缓存管理原理
Spring缓存管理的实现可以分为两个部分来讲:借力AOP:如何通过AOP使缓存管理生效; 缓存管理:缓存管理的本质是什么;一.借力AOP1.织入代理对象为了在业务代码中使用Spring缓存管理,也需要在Bean中织入Advisor,BeanFactoryTransactionAttributeSourceAdvisor就是为缓存而生的Advisor实现类。同事务一样,这里也只需要...转载 2018-09-21 12:06:22 · 2912 阅读 · 0 评论 -
使用RedisTemplate访问Redis数据结构
Redis 数据结构简介Redis 可以存储键与5种不同数据结构类型之间的映射,这5种数据结构类型分别为String(字符串)、List(列表)、Set(集合)、Hash(散列)和 Zset(有序集合)。下面来对这5种数据结构类型作简单的介绍:结构类型 结构存储的值 结构的读写能力 String 可以是字符串、整数或者浮点数 对整个字符串或者字符串的其中一部...转载 2018-04-26 16:42:21 · 557 阅读 · 0 评论