Redis
文章平均质量分 92
打磨时光
我是打磨匠,关注软件开发,打磨产品,服务人类。
展开
-
redis 缓存雪崩、缓存击穿、缓存穿透的解决方案
缓存流程图缓存雪崩缓存雪崩,由于原有缓存失效,例如设置缓存时采用了相同的过期时间,在同一时刻出现大面积的缓存过期,所有原本应该访问缓存的请求都去查询数据库了,而对数据库CPU和内存造成巨大压力,严重的会造成数据库宕机。从而形成一系列连锁反应,造成整个系统崩溃。模拟缓存雪崩示例:@RequestMapping(value = "redis")@RestController@Slf4jpublic class CacheController { @Autowired priv原创 2020-07-18 22:02:39 · 217 阅读 · 0 评论 -
redis 高并发分布式锁实现
一般在单体应用中,如果遇到高并发可以通过 synchronized 或者 Lock 进行加锁,但是现在大部分应用都是采用分布式的方式进行部署,这样像 synchronized 和 Lock 这样的锁就不适用了。这个使用我们可以使用分布式锁来实现,分布式锁的实现方式主要有:基于数据库的分布式锁基于缓存的分布式锁基于 Zookeeper 的分布式锁本次主要记录一下如果是用 redis 实...原创 2019-11-24 12:38:19 · 1352 阅读 · 0 评论 -
springboot 整合 redisTemplate
springboot 整合 redis 大部分场景都是用在缓存场景当中,并结合 @Cacheable 注解使用,本篇文章主要是将springboot 整合 RedisTemplate 为一个 redis 的工具类,因为在日常的开发中,我们经常会将一些数据主动的存到 redis 当中。接下来看一下如何使用 Springboot 整合 redis。maven 依赖关于 springboot 的...原创 2019-11-24 09:56:13 · 579 阅读 · 0 评论 -
Redis 知识体系结构图
原创 2019-11-17 22:52:26 · 835 阅读 · 0 评论 -
docker 搭建 redis 主从复制
redis是k-v型 nosql 数据库,支持字符串(string)、列表(list)、集合(set)、散列(hash)、有序集合(zset:形如member:score的散列集合,其中member为成员,score为成员得分,必须为float型数据)。综合使用redis的以上5种数据类型,可以将redis应用于各种场景,比如点赞、投票网站、消息队列、分布式锁(使用setnx指令,该指令只有在k...原创 2019-11-16 16:47:24 · 174 阅读 · 0 评论 -
springboot 整合 redisson
在之前的文章中有提到 redisson ,基于 redis 的分布式锁。现在记录一下 springboot 整合 redisson 的过程。1. pom 依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> &...原创 2019-06-11 23:05:37 · 7394 阅读 · 5 评论 -
springboot 整合 session,实现 session 共享
前言session 和 cookie 是保存用户状态的两种方式,session在服务端,cookie 在客户端。本文章将记录 springboot 整合 session 的 demo 示例。session(会话)粘性会话如果某台服务器宕机,那么会话信息就没有了。复制会话每台机器都复制会话,如果量太大的话,不现实集中会话使用 mongo 、redis 等统一保持会话pom 依...原创 2019-06-19 23:08:07 · 30515 阅读 · 0 评论 -
redis 常见的部署架构
前言使用 redis 一定要设置过期时间。1. 为什么使用 redis解决应用服务器的cpu和内存压力减少io的读操作,减轻io的压力,比如读取数据库关系型数据库扩展性不强,难以改变表的结构2. 优点nosql数据库没有关联关系,数据结构简单,扩展容易数据读写快,能够每秒胜任几十万的并发,处理速度快3. 应用场景数据高并发读写,我觉得应该是读多写少的热数据对不规则数...转载 2019-06-09 22:56:42 · 1300 阅读 · 0 评论 -
redis 分布式锁 redisson
RedissonRedisson 是官方文档推荐的,是基于java写的。对其初步体验:maven 依赖<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version>...原创 2019-06-09 19:14:13 · 301 阅读 · 0 评论 -
redis 性能测试
Redis 性能测试指定 10000 个请求:> redis-benchmark -n 10000 -q====== PING_INLINE ====== 10000 requests completed in 0.14 seconds 50 parallel clients 3 bytes payload keep alive: 198.91% <= 1 ...原创 2019-06-09 14:53:04 · 652 阅读 · 0 评论 -
redis 中的发布订阅
发布订阅Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。Example:订阅 channel:redisChat> subscribe redisChat1) "subscribe"2) "redisChat"3) (integer) 1发布 channel:> publish redisChat hel...原创 2019-06-09 10:47:27 · 94 阅读 · 0 评论 -
使用 jedis 操作 Redis
Maven 依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency>Redis 使用场景目前自己...原创 2019-06-08 22:58:50 · 122 阅读 · 0 评论 -
docker 运行 redis
Docker 拉取 Reids使用 docker 拉取 redis 镜像时,发现拉取不下来docker pull redisDocker获取镜像报错 docker: Error response from daemon报错:Error response from daemon解决方法:使用 dig 方法,找到 registry-1.docker.io 的主机地址信息dig @1...原创 2019-06-07 11:55:37 · 927 阅读 · 1 评论