后端技术精进
文章平均质量分 94
后端技术精进,后端思维与架构设计的提升
笼中小夜莺
春招已上岸,梦想是环游世界。
展开
-
分布式锁用 Redis 还是 Zookeeper
什么是分布式锁在分布式架构中,Java的锁无法管理多个实例,因此需要有一个类似于统一管理锁的架构模式,即分布式锁。目前比较常见的分布式锁实现方案有以下几种:基于数据库乐观锁,如MySQL(增加字段版本标识version控制实现)基于缓存,如Redis基于Zookeeper、etcd等(ZooKeeper机制规定:同一个目录下只能有一个唯一的文件名,借助ZooKeeper的临时节点实现)例如两个订单服务,对要更新数据库的数据,如果能获取到相应的锁才能进行后续操作。分布式锁的几种实现方式基原创 2022-03-07 21:44:22 · 3997 阅读 · 3 评论 -
由浅入深全面解析threadlocal
https://blog.csdn.net/weixin_50280576/article/details/113849450ThreadLocal介绍ThreadLocal 是什么从Java官方文档中的描述:ThreadLocal类用来提供线程内部的局部变量。这种变量在多线程环境下访问(通过get和set方法访问)时能保证各个线程的变量相对独立于其他线程内的变量。ThreadLocal实例通常来说都是private static类型的,用于关联线程和线程上下文。ThreadLocal 有两大作用:原创 2021-10-28 22:03:06 · 509 阅读 · 0 评论 -
synchronized原理剖析与优化
并发编程的三个问题可见性原子性有序性缓存CPU的运算速度和内存的访问速度相差比较大。这就导致CPU每次操作内存都要耗费很多等待时间。内存的读写速度成为了计算机运行的瓶颈。于是就有了在CPU和主内存之间增加缓存的设计。最靠近CPU的缓存称为L1,然后依次是L2,L3和主内存,CPU缓存模型如图下图所示:CPU Cache分成了三个级别: L1, L2, L3。级别越小越接近CPU,速度也更快,同时也代表着容量越小。1. L1是最接近CPU的,它容量最小,例如32K,速度最快,每个核上都有一个原创 2021-10-28 15:51:22 · 1114 阅读 · 1 评论