- 博客(8)
- 资源 (1)
- 收藏
- 关注
原创 Java的四种引用类型
一、四种引用类型概述在JDK1.2版本后,Java对引用的概念进行扩充,将引用分为强引用(Strong Reference)、软引用(Soft Reference)、弱引用(Weak Reference)、虚引用(Phantom Reference)。这四种引用类型强度依次逐渐减弱,除了强引用外其他引用都继承自Reference抽象类,在java.lang.ref包中可以找到它们。二、强引用(Strong Reference)强引用是最传统的引用定义也是使用最频繁比如Object obj = new
2021-06-29 19:05:27
313
原创 InnoDB存储引擎MVCC
一、MVCC是什么MVCC,全称Multi-Version Concurrency Control 多版本并发控制,MVCC是一种并发控制方法,一般在数据库管理系统中,实现对数据库的并发访问;在编程语言中实现事务的内存。那InnoDB存储引擎使用MVCC有什么用,又如何实现呢。
2021-06-02 13:44:56
330
原创 MySQL数据库InnoDB锁
前言当我们在讨论MySQL数据库InnoDB的锁时,总会想到表锁、行锁、悲观锁、乐观锁等等。如果没有进行深入了解,我们很难知道它们之间关系是什么,有什么作用。本文主要是对InnoDB的锁之间关系和作用进行讲解。一、锁是什么?当并发访问数据库时有可能会导致用户修改和读取数据不一致性问题,为了解决这些问题,目前InnoDB存储引擎提供了两种技术解决方案:多版本控制(MVCC)和基于锁的并发控制(LBCC)。二、使用步骤1.引入库代码如下(示例):import numpy as npimport
2021-05-28 11:53:47
813
1
原创 MySQL数据库InnoDB事务
一、MySQL事务是什么?事务是指作为单个逻辑工作单元一系列操作,要么全部执行成功,要么全部执行失败。常见的业务场景比如:A用户使用自己银行账户转账200元到B用户的账户,那么至少需要三个步骤检查A用户银行账号余额是否大于200元。A用户的银行账户减去200元。B用户的银行账户添加200元。以上三个步骤必须作为一个事务,只要其中一个步骤失败,那么全部的步骤都要进行回滚。上面举了关于事务的业务场景,那如何定义事务呢,一般来说事务具有四大特性(ACID):原子性(Atomicity)、一致性(Co
2021-05-25 10:37:53
382
原创 MySQL数据库InnoDB存储引擎Page页
我们大多数时候,在操作数据库一般只关注如何保存或者获取到正确的数据,但是对于数据是以何种格式存储到磁盘里是少有去了解的。个人觉得理解这个过程有很大意义,于是顺带好奇对MySQL数据库InnoDB存储引擎中Page页进行探究。
2021-05-21 19:38:10
917
原创 MySQL数据库InnoDB存储引擎底层原理详解
从1996年发布MySQL1.0版本到现在已经历经25年头啦,在这期间不断更新版本,目前最新的版本是8.0。那InnoDB是什么东西?首先它肯定是MySql的存储引擎并且实现技术相当复杂,如果要描述清楚是怎么实现,可能在烧烤桌上来几打啤酒也讲不完。本文对InnoDB存储引擎底层原理详解仅限目前所掌握的知识进行讲述。
2021-05-20 17:43:08
3181
4
原创 彻底理解B+树
B+树广泛应用在文件系统和数据库系统如windows的HPFS 文件系统,Linux的JFS 文件系统还有数据库MYSQL的 InnoDB索引等。掌握好B+树基础对如何正确使用MYSQL索引和性能优化有很大帮助。前面写了篇对B树理解总结的文章,现在对B+树继续学习理解。
2021-05-05 18:45:55
3953
2
原创 彻底理解B树
最近我们的项目使用到MongoDB,因为之前的数据存储都是选择MySql或者PostgressSQL,为什么这个项目要选择MongoDB呢?进一步了解到原来MongoDB的默认存储引擎是WridedTiger,并使用B树作为索引底层的数据结构。本着好奇最后打算对B树进行深入了解
2021-04-22 23:03:56
3631
3
Java实现电商秒杀项目
2021-09-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人