
笔记
xerjava
这个作者很懒,什么都没留下…
展开
-
队列解决线程不安全
记录下工作中久违的出现的一点成就感,用到一点智商/经验优势的东西:更新计算余额存在线程不安全问题,最后选择最简单的思路是队列,串行处理,考虑到不能使用内存队列因为重启会丢消息、队列的排序、非单一节点消费需要分布式锁,最后用mysql实现队列,入队列的动作是状态置为系统处理中,按更新时间排序依次出队列,集成现有工具job管理实现单线程消费 ...原创 2021-01-23 12:56:35 · 302 阅读 · 0 评论 -
jdk中的锁
jdk中的锁分为两种:synchronized关键字和lock接口。 synchronized原理涉及三种锁概念:偏向锁、轻量级锁、重量级锁,本质是个锁升级(膨胀)的过程,由此保证了synchronized关键字当前的高性能。 偏向锁:若对象只有1个线程请求,将锁直接分配给该线程; 轻量级锁:若对象有2个线程请求,线程竞争时的等待使用cas(自旋锁、乐观锁的概念);...原创 2020-04-15 15:12:15 · 1308 阅读 · 0 评论