自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

吃一口瓜 的博客

带瓜了吗?吃瓜了吗?

  • 博客(10)
  • 资源 (1)
  • 收藏
  • 关注

原创 虚拟机七:类加载机制(二)之类加载器

类加载器:虚拟机加载阶段,“通过全限定名来获取此类的二进制字节流”这一动作交给外部实现,这个模块的实现称为 类加载器。一、类与类加载器的关系对于任意一个类,在虚拟机中的唯一性是依靠类本身与加载此类的类加载器一共决定的。简单理解就是:相同类通过不同的类加载器加载到虚拟机中,类的身份是不同的;在你使用equals()、isAssignableFrom()、isInstance()方法时可能...

2019-12-31 22:32:01 137

原创 虚拟机七:类加载机制(一)之类加载过程

虚拟机真正加载的是.class的二进制流,所以并不要求.class的来源必须是本地磁盘,也可以是网络或其他地方,这当然取决于使用怎样的类加载器。从简单的Applet、JSP到相对复杂的OSGI技术都依赖这样的特性。类的生命周期其中,加载、校验、准备与初始化是必要的步骤。步骤执行并非严格的顺序执行,是在执行一个阶段的同时也可能开始了后续的阶段。类加载的过程加载:虚拟机需要进行...

2019-12-31 11:54:37 236 1

原创 Class类文件格式

Class类文件格式 类型 名称 数量 描述 u4 magic 1 魔数。用来鉴别是不是class文件 u2 minor_version 1 jdk的支线版本号 u2 major_version 1 jdk的主线版本号 u2 constant_pool_count 1 常量池数量 cp_...

2019-12-30 21:42:25 212

原创 七、事务隔离级别和MVCC

transaction本意是买卖、交易。数据库世界为了强调数据的原子性,中译为 事务。SQL标准规定不同隔离级别下产生的问题不同,会出现脏读、幻读与不可重复读的现象。对应四种事务的隔离级别:Read UnCommitted 会出现脏读、幻读与不可重复读现象 ReadCommitted 只会出现幻读与不可重复读现象 Repeatable Read 只会出现幻读现象 Serializa...

2019-12-25 10:09:12 245

原创 六、Innodb的Buffer Pool

Innodb的缓存池主要是解决热点数据的IO资源消耗问题。没有缓存池时,每次数据请求,都通过IO将数据从磁盘读到内存里。对于频繁访问的数据,应该设计成少量次数或者一次读入,后续不更新此数据的话就避免IO的消耗,直接使用此数据。那就给Mysql独立分配一块内存当做缓存池。这样从表空间加载的数据先加载到缓存池中,数据请求缓存池,如果数据不在缓存池中,再通过IO加载文件。那么对于频繁访问和一...

2019-12-24 15:30:22 131

原创 五、Innodb的表空间

前面介绍过B+树索引,也知道通过B+树能快速的定位用户记录。那么我们就一定能快速的获取数据了吗?其实不然,Innodb查询数据分为两步:①定位记录的位置 ②读取记录。这两步B+树只能加快步骤①,步骤②它无能为力。 试想快递员收发信件,今天要收3号楼每一户共计30户的信件。他有两个方案收取信件:方案①按顺序从第1户一直收到第30户户方案②随机。那么现实情况下哪种方案更省时省力呢?...

2019-12-24 13:55:21 246

原创 四、如何使用B+树索引

根据前面所讲,我们应该比较熟悉B+树的属性:每个索引对应一棵B+树,Innodb引擎默认会为我们建立以主键为规则的聚簇索引 聚簇索引的叶子节点保存用户的完整记录 二级索引是索引列+主键的组合,与聚簇索引不同的是,二级索引不会保存用户的完整记录 B+树的每层页面都会按索引键升序排列,并会组成双向链表,用户的记录会组成单向列表1、索引的代价 每建立一个索引就会生成一棵B+树,就会...

2019-12-08 14:33:55 260

原创 三、索引-为了查的更快

先前讲过了Innodb的行格式以及页格式,以及页保存记录的规矩。你忘记了就回顾看看上篇文章,粉丝才能看哦。 Innodb向页中插入记录时,是按照主键的顺序排序的,记录组成了单向链表。页与页又组成了双向链表,每个页都有页号和记录的主键范围,这样其实就能完成基本的查找要求。 如果我们的每条记录都比较大,平均三条记录就占一个页。那页的链表就会很长,查找就会很慢了。本着追求更快的原则,...

2019-12-06 16:18:42 188

原创 二、InnoDB的页

InnoDB操作的基本单位是页,大小一般是16KB。也分诸多类型,我们最常接触的类型就是数据页(INDEX类型)。比如还有存放表空间信息的信息页,日志页。。。。。一、页的结构页的通用结构 字段名 中文名 长度 简单描述 作用 File Header 文件头部 38B 页的通用信息 起码能表明本页是属于哪个表空间的 Page Head...

2019-12-06 11:35:38 319

原创 一、InnoDB之一条记录的结构

一、页InnoDB将数据存储在磁盘上,真正处理数据的行为发生在内存里。所以操作数据时,需要将数据在磁盘与内存来回交换,Innodb采用页作为交换的基本单位,一页一般16KB大小。也就是说Innodb一次最少从磁盘里读取16KB的数据到内存中,同样最少写入16KB的数据到磁盘。二、InnoDB的行格式平时,我们哪知道Innodb操作的是一页一页的数据,看到的都是一行一行的。这种一行一行的...

2019-12-05 12:23:25 212

1000道+互联网Java工程师面试题.pdf

1000道互联网Java工程师面试题。内涵技术总结、复习等。通过此书工作时作为工具书、面试时作为复习资料和大纲、进阶时作为方向

2020-07-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除