前言 有时候我们需要快速启动一些项目,但是环境往往折腾了好久,因此弄一个可以重用的快速搭建的教程, docker 简直就是这方面的神器,Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux 或Windows操作系统的机器上,也可以实现虚拟化。 本教程基于的前提 ......
223
0
0
2023-12-12
功能概述Redis Cluster是 Redis 的自带的官方分布式解决方案,提供数据分片、高可用功能,在3.0版本正式推出。 使用Redis Cluster能解决负载均衡的问题,内部采用哈希分片规则: 基础架构图如下所示: 图中最大的虚线部分为一个Cluster集群,由6个Redis实例组成。 集群分片整个Cluster集群中有16384个槽位,必须要将 ......
332
0
0
2023-11-05
而 Spring cache 正好可以帮我们减轻开发负担,一个注解就搞定,不用自己去编程式操作。Spring Cache 介绍看到 Spring 就知道这是Spring生态中的东西,其实缓存数据的技术并不少,Spring 官方此举是引入 Spring Cache 来帮我们管理缓存,使用注解,简化很多操作。当然使用 Spring Cache 也有优缺点的.优 ......
227
0
0
2023-10-18
目录前言一、Redis复制是什么?二、Redis复制能干嘛?三、Redis复制的缺点1、复制延迟2、master宕机四、乐观复制策略五、Redis复制常用命令1、info replication2、replicaof 主库Ip 主库port3、slaveof 主库IP 主库port4、slaveof no one六、Redis复制工作流程七、Redis哨兵是 ......
314
0
0
2023-09-11
目录一。Redis实现分布式锁原理为什么需要分布式锁分布式锁如何实现如何避免死锁锁被别人给释放了如何确定锁的过期时间Redis的部署方式对锁的影响二。代码实现Redis分布式锁1.SpringBoot整合redis用到最多的当然属于我们的老朋友RedisTemplate,pom依赖如下:2.Redis配置类:3.Service层面4.业务调用实现分布式锁示例 ......
377
0
0
2023-09-10
Redis 作为我们最常用的内存数据库,很多地方你都能够发现它的身影,比如说登录信息的存储,分布式锁的使用,其经常被我们当做缓存去使用。 可是,用了这么久的 redis ,你懂它吗? 其他《面试八股文》系列文章 目录1.什么是 redis?它能做什么? 2.redis 有哪八种数据类型?有哪些应用场景? 3.redis为什么这么快? 4.听 ......
287
0
0
2023-09-09
目录引言一、Redis BitMap 基本用法⛅BitMap 基本语法、指令⚡使用 BitMap 完成功能实现二、SpringBoot 整合 Redis 实现签到 功能☁️需求介绍⚡核心源码三、SpringBoot 整合Redis 实现 签到统计功能四、关于使用bitmap来解决缓存穿透的方案⛵小结引言在各个项目中,我们都可能需要用到签到和 统计功能。 签到 ......
339
0
0
2023-07-18
在我们的业务中,经常存在需要通过发送验证码、校验验证码来完成的一些业务逻辑,比如账号注册、找回密码、用户身份确认等。在该类业务中,发送验证码的方式可以有各种各样,比如最常见的手机验证,最古老的邮箱验证,到现在相对少见的微信公众号、钉钉通知等;而验证码服务端存储的方式也可以各式各样,比如存储在关系型数据库中,当然也可以如本文标题所示,存储在Redis中。既然已 ......
307
0
0
2023-07-16
目录一、摘要二、Lettuce2.1、基本使用2.2、同步操作2.3、异步操作2.4、响应式编程2.5、发布和订阅2.6、客户端资源与参数配置2.7、线程池配置2.8、主从模式配置2.9、哨兵模式配置2.10、Cluster 集群模式配置三、小结一、摘要Lettuce 是 Redis 的一款高级 Java 客户端,与 Jedis 并列成为最热门的客户端之一, ......
311
0
0
2023-07-09
目录安装redis连接池redis的String类型基本命令示例1.ex - 过期时间(秒) 这里过期时间是3秒,3秒后p,键food的值就变成None2.px - 过期时间(豪秒) 这里过期时间是3豪秒,3毫秒后,键foo的值就变成None3.nx - 如果设置为True,则只有name不存在时,当前set操作才执行 (新建)4.xx - 如果设置为Tru ......
301
0
0
2023-07-09
目录一、摘要二、Jedis2.1、基本使用2.2、连接池2.3、连接池配置2.4、字符串常用 API 操作2.5、哈希常用 API 操作2.6、列表常用 API 操作2.7、集合常用 API 操作2.8、有序集合常用 API 操作三、集群配置3.1、哨兵模式3.2、集群模式四、小结一、摘要在上一篇文章中,我们详细的介绍了 redis 的安装和常见的操作命令, ......
277
0
0
2023-07-09
目录加锁锁续命(自旋)锁订阅及锁等待解锁总结相信使用过redis的,或者正在做分布式开发的童鞋都知道redisson组件,它的功能很多,但我们使用最频繁的应该还是它的分布式锁功能,少量的代码,却实现了加锁、锁续命(看门狗)、锁订阅、解锁、锁等待(自旋)等功能,我们来看看都是如何实现的。加锁//获取锁对象 RLock redissonLock = redis ......
293
0
0
2023-06-22
目录1、背景2、目标3、方案4、实战编码4.1、环境准备4.2、pom依赖4.3、自定义注解4.4、切面处理类4.5、工具类4.6、配置类4.7、yml配置4.8、使用4.9、测试总结1、背景项目中如果查询数据是直接到MySQL数据库中查询的话,会查磁盘走IO,效率会比较低,所以现在一般项目中都会使用缓存,目的就是提高查询数据的速度,将数据存入缓存中,也就是 ......
299
0
0
2023-06-21
目录一、摘要二、方案实践2.1、引入 redis 组件2.2、添加 redis 环境配置2.3、编写服务验证逻辑,通过 aop 代理方式实现2.4、在相关的业务接口上,增加SubmitLimit注解即可三、小结一、摘要在上一篇文章中,我们详细的介绍了随着下单流量逐渐上升,为了降低数据库的访问压力,通过请求唯一ID+redis分布式锁来防止接口重复提交,流程图 ......
417
0
0
2023-06-18
目录一、摘要二、方案实践2.1、引入 redis 组件2.2、添加 redis 环境配置2.3、编写获取请求唯一ID的接口,同时将唯一ID存入redis2.4、编写服务验证逻辑,通过 aop 代理方式实现2.5、在相关的业务接口上,增加SubmitToken注解即可三、小结一、摘要在上一篇文章中,我们详细的介绍了对于下单流量不算高的系统,可以通过请求唯一ID ......
298
0
0
2023-06-17