简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
目录一、重入锁ReentrantLock1. 实现锁重进入2. 获取公平锁与非公平锁的区别二、读写锁ReentrantReadWriteLock1.ReentrantReadWriteLock的API2. 读写状态设计3. 写锁的获取与释放4.读锁的获取与释放5. 写锁降级三、参考资料一、重入锁ReentrantLock重入锁指线程获得锁后能够再次获取该锁而线程不被阻塞。synchronized关
目录一、为什么用ConcurrentHashMap?二、ConcurrentHashMap结构及初始化1.ConcurrentHashMap结构2. 初始化三、ConcurrentHashMap的API1. put()源码2. get()源码四、参考资料一、为什么用ConcurrentHashMap?ConcurrentHashMap线程安全且高效的操作,如下图对比所示。而HashMap非线程安全
一、常见限流场景缓存、降级、限流被称为高并发、分布式系统中经常提及的话题。这里讨论网关限流。1.1 限流对象a):请求频率限流(Request rate limiting):限制某个接口的一分钟内的请求数b):并发量限流(Concurrent requests limiting):限制某个服务的处理请求数c):传输速率限流(Transmission rate limiting):限制下载文件速率d
目录一、scan扫描原理二、scan测试一、scan扫描原理如上图所示,需注意问题:1. scan与keys:复杂度都是O(n),但scan的游标分步扫描。若是生产海量扫描,keys一次获取所有正则的key,造成服务卡顿,所以避免使用keys操作2. scan命令中count:不是元素的数量,而是slot数量,从而导致每次分步遍历获取元素数量不同3. 遍历顺序:高进位加法,意思是:扩容时,从高位进