06 2022 档案

摘要:分布式锁 本文整理自黑马程序员相关资料 问题的引入 在平时单服务的情况下,我们使用互斥锁可以保证同一时刻只有一个线程执行自己的业务。原理是,在JVM内部维护了一个锁监视器,锁监视器保证了同一时刻只有一个线程获取到锁。但是如果开启了多个服务,就会有多个JVM,从而有多个不同的锁监视器,每个锁监视器监视 阅读全文
posted @ 2022-06-15 20:35 KeepGoing4everZxz 阅读(611) 评论(0) 推荐(2) 编辑
摘要:缓存穿透,缓存雪崩,缓存击穿 本文整理自黑马程序员相关资料 缓存穿透 缓存穿透是指客户端请求的数据在缓存中和数据库中都部存在,这样缓存永远不会生效。因此这些请求都会穿过缓存,最终请求到数据库上,对数据库造成非常大的压力。 常见的解决方案有两种: 缓存空对象:当缓存和数据库都没有请求的数据时,将查询的 阅读全文
posted @ 2022-06-15 15:16 KeepGoing4everZxz 阅读(123) 评论(0) 推荐(1) 编辑
摘要:Redis缓存更新策略 本文整理自黑马程序员相关资料 内存淘汰 超时剔除 主动更新 说明 不用自己维护,利用Redis的内存淘汰机制,当内存不足时自动淘汰部分数据。下次查询时更新缓存 给缓存数据添加TTL时间,到期后自动删除缓存,下次查询时更新缓存 编写业务逻辑,在修改数据的同时,更新缓存 一致性 阅读全文
posted @ 2022-06-15 10:34 KeepGoing4everZxz 阅读(1188) 评论(0) 推荐(0) 编辑
摘要:关于锁不住toString()后的字符串的问题 原因:toString()的源码如下所示,最终都是生成新的字符串,所以当多线程调用的时候,每个线程锁的并不是同一对象。 public static String toString(long i) { int size = stringSize(i); 阅读全文
posted @ 2022-06-01 22:36 KeepGoing4everZxz 阅读(50) 评论(0) 推荐(0) 编辑

more_horiz
keyboard_arrow_up dark_mode palette
选择主题
点击右上角即可分享
微信分享提示