随笔分类 -  并发

怎样才能保证注册用户名唯一
摘要:首先这可能不是一个很简单的问题,很多程序员大概会这么写 这样写有问题吗?明显,并发情况两个用户同时进入17行,都查询到 null,然后都执行22行,数据库插入了两条 同样的 userName。这写法不可用。 既然数据库会重复,那么我们就在数据库userName字段加上唯一索引,改成下面写法 现在有问 阅读全文

posted @ 2023-01-01 23:41 zhangyukun 阅读(1043) 评论(6) 推荐(0)

机械硬盘 固态硬盘 读写原理
摘要:机械硬盘 磁盘结构图: 一个磁盘磁盘里面有一到多个盘片,盘片可以可以单面或者双面的。单面盘片只有一个面有磁头,双面盘片,两个面都有磁头。多盘片,双盘面的磁盘,是协同工作的,这时候他们机械臂的位置相同,盘面相对位置恒定,理论上多盘片之间可以相互【配合共同读写,但是查询了多资料,都没有先关的记录,多盘片 阅读全文

posted @ 2022-06-18 22:37 zhangyukun 阅读(3295) 评论(0) 推荐(1)

商品秒杀提高QPS解决方案
摘要:提高QPS有不变的几个思想: 1 缓存数据好过直接操作数据库 2 批量修改,好过单条修改 3 保护系统不宕机,宕机以后QPS 为0. 场景和要求:活动商品秒杀,需要支持大量的用户的瞬时冲击,我们需要尽量的做到QPS 高,然后我们要保证即便用户超出我们系统预期也能稳定运行。 不优化情况我们一般怎么做: 阅读全文

posted @ 2022-05-01 14:06 zhangyukun 阅读(741) 评论(0) 推荐(0)

Java 伪内存共享解决方案
摘要:简单的说一下伪内存共享是什么: cpu读取数据的顺序:cpu->寄存器->1级缓存->2级缓存->3级缓存(3级缓存开始是CPU共享的)->主内存->硬盘,读取数据不是一个对象或者一个字节为单位读取的,而已一缓存行为单位,CPU 不同缓存行的大小也不同,一般为32-256个字节,最常见的缓存行大小是 阅读全文

posted @ 2022-05-01 00:16 zhangyukun 阅读(238) 评论(0) 推荐(0)

常见限流算法
摘要:常见限流算法 计数器算法(固定窗口): 描述:指定时间段内只能通过N个请求,多与的请求被拒绝,当时间节点到达下一个阶段的时候重置允许通过的数量N 实现:一段时间我们可以时间毫秒除单位时间 做为阶段标志来区分时间段,初始化计数器的时候设置容量为N,来一个请求N-1,N=0 的时候拒绝后面的请求,如果毫 阅读全文

posted @ 2022-04-23 12:55 zhangyukun 阅读(139) 评论(0) 推荐(0)

redison 自动续期的 分布式锁
摘要:1 导入 maven <dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>3.11.1</version> </dependency> 2 初始化redisson 客户端(re 阅读全文

posted @ 2022-03-12 18:58 zhangyukun 阅读(4972) 评论(0) 推荐(0)

disruptor 高效队列
摘要:disruptor 是什么: disruptor 是一个 低延时的 无锁 环形 队列. 相较于 java的 队列 ,他有明显的优点 ,无界,无锁,低延时(解决了为内存共享问题 ) disruptor 就一个 高效的生产者消费者队列. EventHandler ,WorkHandler 区别 , Wo 阅读全文

posted @ 2019-11-11 16:21 zhangyukun 阅读(648) 评论(0) 推荐(0)

数据库的死锁原因 和 处理办法
摘要:数据库的死锁: 和 java的 死锁类似 ,条件 ,两个事务(线程) ,事务1 和事务2 ,事务1 要拿到 了 锁a ,等待 锁 b ,事务2 拿到了 锁b ,等待锁a。 这时候就死锁了。 备注: java 我们很明显的 知道什么时候加的锁什么时候释放锁,比如 synch 方法( 进入方法前获取锁, 阅读全文

posted @ 2019-07-25 17:52 zhangyukun 阅读(1414) 评论(0) 推荐(0)

java 并发 详解
摘要:1 普通线程和 守护线程的区别。 守护线程会跟随主线程的结束而结束,普通线程不会。 2 线程的 stop 和 interrupted 的区别。 他们两都是线程对象的方法,都是用来终止线程,区别在于interrupted 通过异常提示可以做一些资源回收之类的事情然后再终止线程,stop是直接直接无提示 阅读全文

posted @ 2019-07-01 00:33 zhangyukun 阅读(586) 评论(0) 推荐(0)

导航