1.简介 Redis在生产环境中一般是通过集群的方式进行运行,Redis集群包括主从复制集群和数据分片集群两种类型。* 主从复制集群提供高可用性,而数据分片集群提供负载均衡。* 数据分片集群中能实现主从复制集群的功能。2.Redis主从复制集群 主从复制集群中由Master节点提供读写服务,Slave节点负责同步Master节点中的数据,当Master节 ......
369
0
0
2023-06-16
我以前还没接触 Redis 的时候,听到大数据组的小伙伴在讨论Redis,觉得这东西好高端,要是哪天我们组也可以使用下Redis就好了,好长一段时间后,我们项目中终于引入了Redis这个技术,我用了几下,感觉Redis也就那么回事啊,不就是get set吗?当我又知道Redis还有自增、自减操作,而且这些操作还是原子性的,秒杀就可以用这个技术,我就觉得我已经 ......
274
0
0
2023-06-16
目录1、redis哨兵(Sentinel)1.1、redis集群介绍1.2、redis哨兵(Sentinel)的工作原理1.2.1sentinel中的三个定时任务:1.3、实现哨兵1.3.1、实现哨兵需要先实现一下主从复制的架构1.3.2、编辑哨兵的配置文件1.3.2、启动哨兵1.3.3、验证哨兵端口1.3.4、查看哨兵日志1.3.5、当前sentinel状 ......
367
0
0
2023-06-16
在实际开发过程中经常会做的一步操作,就是判断当前的key是否存在。 那这篇博客主要分为三部分: 、几种方式判断当前key是否存在的性能进行比较。 、Redis实现 布隆过滤器 并批量插入数据,并判断当前key值是否存在。 、针对以上做一个总结。 一、性能对比主要对以下方法进行性能测试比较: 1、List的 contains 方法 2、Map的 ......
376
0
0
2023-06-13
目录前言前置知识分布式锁的思考Redis订阅/发布机制Redisson加锁订阅解锁看门狗前言Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。Redisson有一样功能是可重入的分布式锁。本文来讨论一下这个功能的特点以及源码分析。前置知识在讲Redisson,咱们先来聊聊分布式锁的特点以及Red ......
305
0
0
2023-06-13
nginx nginx.conf:Nginx核心配置文件,linux下默认安装在/etc/nginx/# Nginx所用用户和组,window下不指定 user www-data; # 工作的子进程数量(通常等于CPU数量或者倍于CPU) worker_processes auto; # pid存放文件 pid /run/nginx.pi ......
260
0
0
2023-06-12
目录分布式限流-单位时间多实例多线程访问次数限制1.简单使用2. 实现限流redisson使用了哪些redis数据结构3. 超过10s,我再次获取一个令牌,数据结构发生的变化4. 源码浅析分布式限流-单位时间多实例多线程访问次数限制接前面聊一聊redisson及优雅实现 和 说一说spring boot优雅集成redisson,简单以源码的方式给大家介绍了r ......
386
0
0
2023-06-09
前言 高可用对于当下的系统而言,可以说是一个硬指标,常年专注于业务开发的我们,对于高可用最直观的感觉可能就是祈祷应用不要出问题,不要报错;即便有问题,也最好不是我们的业务代码逻辑导致的,如果是服务器、DB、中间件(如注册中心、配置中心等)的异常那就抛给对应的 sre , dba;然而常在河边走,哪有不湿鞋,为了保障服务的高可用,我们可以从哪些方面进行努力呢 ......
344
0
0
2023-06-06
目录一、先看Redis的使用:1. 在pom.xml中添加Redis相关依赖项2. 在application.properties中添加Redis的相关配置3. 新建 service/RedisService 接口及其实现类 service/impl/RedisServiceImpl4. 新建 controller/RedisController5. 通过P ......
461
0
0
2023-06-04
以下文章来源于sowhat1412 ,作者sowhat1412 总感觉哪里不对,但是又说不上来1、基本类型及底层实现 1.1、String 用途: 底层 :C语言中String用 char []数组表示,源码中用 SDS (simple dynamic string)封装char[],这是是 Redis 存储的 最小单元 ,一个SDS最大可以存储51 ......
395
0
0
2023-06-01
目录什么是 Redis前置知识String介绍常用命令使用场景底层实现SDS 结构体List介绍常用命令使用场景底层实现ZipListQuickListHash介绍常用命令使用场景底层实现DictDict 的 rehashSet介绍常用命令使用场景底层实现IntsetZSet介绍常用命令使用场景底层实现SkipList什么是 RedisRedis 是基于内存 ......
385
0
0
2023-05-15
目录一、高可用什么是高可用二、Redis持久化持久化功能RDB持久化 触发条件bgsave执行流程AOF持久化执行流程命令追加文件写入和文件同步文件重写文件重写流程三、RDB和AOF的优缺点RDB持久化的优缺点优点缺点AOF持久化优缺点四、Redis性能管理查看Redis内存使用内存碎片率内存碎片如何产生跟踪内存碎片率解决碎片率大的问题内存使用率内 ......
400
0
0
2023-05-02
准确的讲,Redis 事务包含两种模式 : 事务模式 和 Lua 脚本。先说结论:Redis 的事务模式具备如下特点:保证隔离性;无法保证持久性;具备了一定的原子性,但不支持回滚;一致性的概念有分歧,假设在一致性的核心是约束的语意下,Redis 的事务可以保证一致性。但 Lua 脚本更具备实用场景,它是另一种形式的事务,他具备一定的原子性,但脚本报错的情况下 ......
399
0
0
2023-05-02
写在前面在实际生活中,我们经常会遇到在登陆的时候,需要输入图形验证码这样的场景,验证码不仅可以防止爬虫的抓取,还可以限制接口短时间内被访问的次数,可以说也是一种限流措施。本篇来学习如何在前后端分离架构下,基于SpringBoot实现图形验证码这一功能。实战项目初始化第一步,新建一个名为verify-code的SpringBoot项目,并在其POM文件中添加如 ......
384
0
0
2023-04-29
目录一、单点Redis的问题二、RDB三、AOF四、Redis优化秒杀流程1、秒杀步骤:2、Redis优化秒杀步骤:3、秒杀的lua脚本 4、调用秒杀的lua脚本5、通过线程池,操作阻塞队列五、基于Redis实现共享session登录基于session实现登录一、单点Redis的问题1、数据丢失问题Redis数据持久化。2、并发能力问题大家主从集群 ......
443
0
0
2023-04-27