- 博客(4)
- 资源 (1)
- 收藏
- 关注
原创 JVM内存溢出分析样例
首先设置虚拟机将启动参数:-Xms128m -Xmx128m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:\-Xms128m为最小堆内存-Xmx128m为最大堆内存-XX:+HeapDumpOnOutOfMemoryError为产生内存溢出时dump堆转储文件-XX:HeapDumpPath为指定的堆转储文件保存路径2. 启动项目,本案例使用导入大数据量的Excel文件测试,Excel文件约7万行,用poi读取,代码如下:上传.
2021-05-27 11:39:57
258
原创 关于wait、yield、notify和notifyAll
wait方法:调用该方法迫使当前线程让出cpu资源,等待其它线程notify或者notifyAll使其重新处于ready状态notify和notifyAll:让调用过wait方法的线程停止等待,处于ready状态方法从字面意思看上去非常容易理解,我们对这3个方法稍做分析,并提出几个问题:(1)wait和sleep有什么区别?(2)这3个方法从实用角度看,应当是多线程并发场景使用的,为什么他们都定义在Object对象里面?(3)这3个方法能否在synchronized代码外使用?第一个问题很简.
2021-05-21 17:25:18
237
1
原创 MySQL事务隔离级别
在阐述隔离级别前,先引入一个名词MVCC即多版本并发控制,即一条数据存在多个数据副本。为了提升数据库性能,协调因锁导致读写矛盾,innoDB通过一致性非锁定读的方式来读取当前执行时间数据库中的数据。在这种机制下,如果读取的行正在执行delete或update操作,innoDB不会去等待行上的锁的释放,而是读取行的一个快照数据snapshot。脏读(read uncommitted):一个事务读到了另一个事务已修改但未提交的数据。该级别的事务直接读取最新行的数据,未使用mvcc。幻读(read comm
2021-04-06 18:09:02
93
原创 MySQL索引
MySQL索引作为SQL优化的主要内容,我们需要对索引有一定的认识和了解。MySQL索引是基于B+树的树形结构,所谓B+树,是一种平衡二叉树,而所谓的平衡,是指叶节点的高度差不超过1,平衡树比非平衡树拥有更高的平均查询速度。而索引是通过左旋或者右旋维持结构的平衡。B+树索引中,所有的数据按顺序存在叶节点中。索引类型:聚集索引和辅助索引。聚集索引一般是指主键索引,聚集索引本身包含了整行的数据,因此拥有最快的查询速度,辅助索引只包含部分数据,需要借助主键进行二次书签查询方可获取整行记录。如何选择建立索
2021-04-06 11:40:30
69
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人