随笔分类 - 

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

posted @ 2022-05-01 00:16 zhangyukun 阅读(238) 评论(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)

数据库的死锁原因 和 处理办法
摘要:数据库的死锁: 和 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)

elastic 部分更新 retry_on_conflict 和 数据库写锁 详细比对
摘要:1 数据库的 update 在修改这条数据的的过程中(这个过程指的是 数据库执行update 到 事务提交的过程中 )为这条数据加上 写锁,阻止 别的事务 对锁定数据的修改,请求后一个修改事务的线程阻塞,直到前一个事务的完成,所以针对这条数据的 2 个修改 是一个一个来的。所以 数据库的 updat 阅读全文

posted @ 2018-07-31 22:05 zhangyukun 阅读(6740) 评论(0) 推荐(1)

mysql 事务隔离级别详解
摘要:事物的 隔离级别,说简单非常简单(新手也能说出 是个隔离级别 和 影响),说男也非常难。(很多 有几年编程 经验的程序员依旧搞不清楚) 废话不多少 直接开始: 事务的隔离级别 是用来描述 事务的读关系的,和写完全没有关系。所有数据库都不允许修改一个事务未提交的数据行。 Read Uncommitte 阅读全文

posted @ 2018-07-20 00:06 zhangyukun 阅读(284) 评论(0) 推荐(0)

导航