随笔分类 -  Redis详细

摘要:问题:删除操作缺乏原子性 场景 1、index1获得锁、执行具体操作、比较lock的uuid值确实和自己生成的uuid是否相等,相等则删除锁。 uuid = v1 set(lock, uuid) uuid.equals(get("lock")) 2、但是index1执行删除前,lock刚好过期时间已 阅读全文
posted @ 2023-06-06 14:14 佛系粥米 阅读(64) 评论(0) 推荐(0) 编辑
摘要:问题描述: 随着业务发展的需要,原单体单机部署的系统被演化分成分布式集群系统后,由于分布式系统多线程、多进程且分布在不同机器上,这将使原单机部署情况下的并发控制锁策略失效,单纯的Java API并不能提供分布式锁的能力。为了解决这个问题就需要一种跨JVM的互斥机制来控制共享资源的访问,这就是分布式锁 阅读全文
posted @ 2023-06-05 21:49 佛系粥米 阅读(376) 评论(0) 推荐(0) 编辑
摘要:一、缓存穿透 缓存穿透:key对应的数据在数据源并不存在,每次针对key的请求从缓存中获取不到,请求都会压到数据源,从而可能压垮数据源,比如用一个不存在的用户id获取用户信息,不论缓存还是数据库都没有,若黑客利用此漏洞进行攻击可能压垮数据库 现象: 1、应用服务器压力变大 2、redis命中率低 3 阅读全文
posted @ 2023-06-05 19:57 佛系粥米 阅读(20) 评论(0) 推荐(0) 编辑
摘要:集群: 容量不够,redis如何进行扩容 并发写操作,redis如何进行分摊 主从模式、薪火相传模式、主机宕机,导致ip地址发生改变,应用程序中配置需要修改对应的主机地址、端口等信息 之前是代理主机解决,redis的无中心化集群:任何一台服务器都可以作为集群入口 Redis集群实现了对Redis的水 阅读全文
posted @ 2023-06-05 16:13 佛系粥米 阅读(21) 评论(0) 推荐(0) 编辑
摘要:一、主从复制介绍 主机数据更新后根据配置和策略,自动同步到备机的master/slave 机制,Master以写为主,slave以读为主 好处:读写分离,性能扩展;容灾快速恢复(一主多从):一台slave从机挂掉,马上切换到另一台slave从机提供服务。 主机挂:集群 集群:一主多从 ——关联—— 阅读全文
posted @ 2023-06-04 20:48 佛系粥米 阅读(23) 评论(0) 推荐(0) 编辑
摘要:AOF(Append Only File) 以日志的形式来记录每个写操作(增量保存),将Redis执行过的所有写指令记录下来(读指令不记录),只许追加文件但不可以改写文件,redis启动之初会读取该文件重新构建数据,换言之,redis重启的话就根据日志文件的内容将写指令从前到后执行一次以完成数据的恢 阅读全文
posted @ 2023-06-04 20:02 佛系粥米 阅读(28) 评论(0) 推荐(0) 编辑
摘要:RDB(Redis DataBase) 在指定的时间间隔内将内存的数据集快照(当前某点的数据snapshot)写入磁盘,它恢复时是将快照文件直接读到内存里【默认开启】 备份如何执行: Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入到一个临时文件【保证数据的一致性和完整性】中, 阅读全文
posted @ 2023-06-04 19:26 佛系粥米 阅读(12) 评论(0) 推荐(0) 编辑
摘要:使用工具ab模拟测试:yum install httpd-tools ab --help:使用信息 ab -n 1000 -c 100 http://localhost8080/SecKill :一个1000请求中有100个并发操作 vim postfile 模拟表单提交参数,以&符号结尾;存放当前 阅读全文
posted @ 2023-06-04 16:56 佛系粥米 阅读(36) 评论(0) 推荐(0) 编辑
摘要:package com.atguigu.seckill.controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.Redi 阅读全文
posted @ 2023-06-04 10:20 佛系粥米 阅读(9) 评论(0) 推荐(0) 编辑
摘要:Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序执行。事务在执行的过程中,不会被其它客户端发送来的命令请求所打断。 Redis事务的主要作用就是串联多个命令防止别的命令插队。 一、Redis事务三特性 Multi:开启事务,输入的命令都会依次进入命令队列中,但不会执行,直到输入 阅读全文
posted @ 2023-06-02 21:41 佛系粥米 阅读(189) 评论(0) 推荐(0) 编辑
摘要:1、在pom.xml文件中引入redis相关依赖 <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> <version>2.6.0</version></dependenc 阅读全文
posted @ 2023-06-02 20:11 佛系粥米 阅读(57) 评论(0) 推荐(0) 编辑
摘要:要求 1、输入手机号,点击发送后随机生成6为数字码,2分钟有效 Random、验证码存进Redis并设置过期时间120秒 2、输入验证码,点击验证,返回成功或失败 从Redis中获取验证码比对输入验证码 3、每个手机号每天只能输入3次 incr每次发送加1,大于2之后,提醒不能发送 package 阅读全文
posted @ 2023-06-02 19:04 佛系粥米 阅读(23) 评论(0) 推荐(0) 编辑
摘要:一、新建Maven项目 二、导入Jedis依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>3.2.0</version> </dependency> 三、获取连接-创建J 阅读全文
posted @ 2023-06-02 16:49 佛系粥米 阅读(15) 评论(0) 推荐(0) 编辑
摘要:一、Bitmaps Bitmaps本身不是一种数据类型,实际上它是字符串(key-value),但是它可以对字符串的位进行操作 可以把Redis想象成一个以位为单位的数组,数组每个单元只能存储0和1,数组的下标在Bitmaps中叫做偏移量 * setbit key offset value 设置Bi 阅读全文
posted @ 2023-06-02 16:12 佛系粥米 阅读(9) 评论(0) 推荐(0) 编辑
摘要:一、Units单位 配置大小单位,开头定义了一些基本度量单位,只支持byte,不支持bit,大小写不敏感 二、网络配置 默认情况下bind=127.0.0.1只能接收本机的访问请求,不写的情况下,无限制接受任何ip地址的访问 生产环境肯定要写你应用服务器的地址;服务器是需要远程访问的,所以需要将其注 阅读全文
posted @ 2023-05-31 21:43 佛系粥米 阅读(59) 评论(0) 推荐(0) 编辑
摘要:一、Redis键(key) keys * 查看当前库所有key(匹配keys *1) exists key 判断某个key是否存在 type key 查看key类型 del key 删除key unlink key 根据value选择非阻塞删除,仅将keys从keyspace元数据中删除,真正的删除 阅读全文
posted @ 2023-05-31 21:18 佛系粥米 阅读(19) 评论(0) 推荐(0) 编辑
摘要:Redis默认16个数据库,0-15,初始默认使用0号库 使用命令select <dbid>来切换数据库如select 8 同一密码管理,所有库同一个密码 dbsize查看当前数据库的key的数量 flushdb清空当前库 flushall杀死全部库 Redis是单线程+多路IO复用技术 多路复用指 阅读全文
posted @ 2023-05-30 21:29 佛系粥米 阅读(15) 评论(0) 推荐(0) 编辑
摘要:利用nginx做反向代理分布式集群存在session如何存储的问题? 1、存储到客户端cookie,不安全,网络负担效率低 2、存在文件服务器或者数据库里,大量的IO效率问题 2、session复制,session数据冗余,节点越多浪费越大 3、NoSQL数据库,缓存数据库,完全存在内存中,速度快, 阅读全文
posted @ 2023-05-30 21:17 佛系粥米 阅读(23) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示