- 博客(5)
- 收藏
- 关注
原创 本地锁和分布式锁
1.本地锁的局限性常见的本地锁有synchronized和lock锁,这些都是本地锁2.本地锁带来的问题1.1 单体应用,如果本地不加同步锁的时候,在高并发的情况下,会发生线程安全问题。1.2 单体应用,如果加上本地锁的时候,在高并发情况下,可以解决安全问题,但是效率会变低。但是,在集群的情况下,会怎么样呢?问题: 在分布式部署的时候,无法保证只有只有一个进程在当前的程序内执行 解决: 需要一把公共锁(分布式锁)流程: 此处使用redis...
2022-04-02 20:47:47 1484
原创 redis缓存穿透、缓存雪崩、缓存击穿 问题解决
缓存最常见的三个问题:1.缓存穿透2.缓存雪崩3.缓存击穿缓存穿透:是指查询一个不存在的数据,由于缓存无法命中,将去查询数据库,但是数据库也无此记录,并且处于容错考虑,我们没有将这次查询的null写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查,失去了缓存的意义。在流量大的时候,可能DB就挂掉了,要是有人利用不存在的key频繁攻击我们的应用,这就是漏洞。解决:空结果也进行缓存,但他的过期时间会很短,最长不超过5分钟缓存雪崩:是指在我们设置缓存时采用了相同
2022-04-01 15:01:44 815
原创 JVM的内存分配
class 文件 通过类的加载器进行加载方法区/元空间: 类的信息 方法的信息 成员变量的信息 常量信息 静态资源信息本地方法栈: c/c++ 语言调用时产生的变量信息虚拟机栈: 局部变量信息堆: 对象 new 出来的 new Scanner 数组程序计数器: 记录下一条指令的地址...
2021-10-08 19:58:02 80
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人