多线程与分布式
文章平均质量分 66
songlinzheng
这个作者很懒,什么都没留下…
展开
-
java线程池详解
一、写在前面1.1 线程池是什么线程池(Thread Pool)是一种基于池化思想管理线程的工具,经常出现在多线程服务器中,如MySQL。线程过多会带来额外的开销,其中包括创建销毁线程的开销、调度线程的开销等等,同时也降低了计算机的整体性能。线程池维护多个线程,等待监督管理者分配可并发执行的任务。这种做法,一方面避免了处理任务时创建销毁线程开销的代价,另一方面避免了线程数量膨胀导致的过分调度问题,保证了对内核的充分利用。而本文描述线程池是JDK中提供的ThreadPoolExecutor类。当然,原创 2022-11-09 13:54:21 · 572 阅读 · 0 评论 -
抢红包流程
原创 2021-08-27 17:25:11 · 157 阅读 · 0 评论 -
分布式锁详解
分布式锁详解一、基于数据库(一)、基于数据库表做乐观锁,用于分布式锁(二)、基于数据库表做悲观锁(三)、基于数据库表数据记录做唯一约束(四)、总结二、基于缓存:(一)、使用redis的setnx()用于分布式锁。(二)、使用memcached的add()方法,用于分布式锁。(三)、使用Tair的put()方法,用于分布式锁。三、基于Zookeeper:一、基于数据库(一)、基于数据库表做乐观锁,用于分布式锁1.首先说明乐观锁的含义:大多数是基于数据版本(VERSION)的记录机制实现的。何谓数据版本转载 2020-09-02 14:16:35 · 187 阅读 · 0 评论 -
什么是乐观锁,什么是悲观锁
转载自https://www.jianshu.com/p/d2ac26ca6525什么是乐观锁,什么是悲观锁一、并发控制二、悲观锁(Pessimistic Lock)三、乐观锁(Optimistic Locking)四、实现方式五、如何选择一、并发控制当程序中可能出现并发的情况时,就需要通过一定的手段来保证在并发情况下数据的准确性,通过这种手段保证了当前用户和其他用户一起操作时,所得到的结果和他单独操作时的结果是一样的。这种手段就叫做并发控制。并发控制的目的是保证一个用户的工作不会对另一个用户的工作产转载 2020-09-02 11:27:30 · 470 阅读 · 1 评论