- 博客(9)
- 资源 (6)
- 收藏
- 关注
原创 redis分布式锁
实现思路获取锁的时候,使用setnx加锁,并使用expire命令为锁添加一个超时时间,超过该时间则自动释放锁,锁的value值为一个随机生成的UUID,通过此在释放锁的时候进行判断。 获取锁的时候还设置一个获取的超时时间,若超过这个时间则放弃获取锁。 释放锁的时候,通过UUID判断是不是该锁,若是该锁,则执行delete进行锁释放。相关命令命令 用法 SETNX SETNX key val当且仅当key不存在时,set一个key为val的字符串,返回1;若key存在,则什么都不
2021-06-22 15:33:29 580
转载 redis哨兵机制
1.概述Redis Sentinel是一个分布式系统,为Redis提供高可用性解决方案。可以在一个架构中运行多个 Sentinel 进程(progress), 这些进程使用流言协议(gossip protocols)来 接收关于主服务器是否下线的信息, 并使用投票协议(agreement protocols)来决定是否执行自动故 障迁移, 以及选择哪个从服务器作为新的主服务器。Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance) 该系统执行以下三个任务:监控
2021-06-22 10:48:08 490
转载 布隆过滤器
不知道从什么时候开始,本来默默无闻的布隆过滤器一下子名声大燥,在面试中面试官问到怎么避免缓存穿透,你的第一反应可能就是布隆过滤器,缓存穿透=布隆过滤器成了标配,但具体什么是布隆过滤器,怎么使用布隆过滤器不是很清楚,那今天我们就来把它说清楚,讲明白。缓存穿透...
2021-06-21 10:59:36 269
转载 redis事务
Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证:事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。 一个事务从开始到执行会经历以下三个阶段:开始事务。命令入队。执行事务。...
2021-06-18 17:42:57 52
原创 redis持久化
什么是redis持久化?Redis持久化就是将内存数据保存到硬盘。为什么要redis持久化?redis是基于内存的Key Value类型的NoSQL数据库,也就是说redis的数据是存在内存 中,如果突然宕机,数据就会全部丢失,因此必须有一种机制来保证redis在内存中的数据不会丢失,这种机制就叫redis持久化机制。redis持久化方案redis有两种持久化方式:Snapshotting(RDB) 和 Append-Only File(AOF),redis默认的持久化方式是RDB1
2021-06-11 18:03:01 1423
原创 redis 主从复制
搭建主从 主机(master),从机(slave)在从机slave上找到redis.conf文件,然后找到vim redis.conf,找到此行:slaveof <masterip> <masterport> 释义:<masterip>指的是主机master的ip地址,<masterport>指的是主机master的 端口找到此行将主机的ip和port加上去即可另外还有如果主机master服务...
2021-06-11 16:54:49 181 1
原创 redis基本数据类型、键(key)命令、备份与恢复
Redis数据类型redis基本数据类型有:string、list 、set 、zset、hash 除此之外还有:geo、HyperLogLog、bitmap、AtomicLongredis数据类型指的是redis中key-value的value数据类型1)、字符串 String2)、列表 List3)、集合 Set4)、有序集合 Zset5)、哈希 Hash6)、GEO7)、HyperLogLog8)、BitMap...
2021-06-08 18:00:24 1131
转载 线程优先级、线程分类(用户线程、守护线程)
线程优先级java 中的线程优先级的范围是1~10,默认的优先级是5。“高优先级线程”会优先于“低优先级线程”执行。
2021-06-08 17:38:44 331
转载 线程终止方式
1. interrupt()说明2. 终止线程的方式 2.1 终止处于“阻塞状态”的线程 2.2 终止处于“运行状态”的线程3. 终止线程的示例4. interrupted() 和 isInterrupted()的区别
2021-06-08 15:33:50 744
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人