- 博客(8)
- 收藏
- 关注
原创 mysql中用到的一些树
在mysql的各种引擎中,最常用到树就是 B树,B+树,最早由平衡二叉树演变而来所以我们要了解B+树,首先需要了解二叉树,平衡二叉树,平衡多路查找树(B-树)1,二叉树,左边的树的键值小于跟键值,右侧子树的键值大于跟键值当深度为一的时候,查找次数为1,深度为二的时候,随着3号球的加入,查找次数变为两次,7号球的加入,查找次数为两次。当深度为三的时候,3号球加入,查找次数为3,5号球,8号球...
2019-12-27 16:01:53
530
原创 cloud中的组件
1,服务注册中心 Eureka实现了cap定理中的ap定理,即服务可用性原理,分区容错性原理。同样的还有一个服务注册发现还有一个 zookeeper ,它实现的是cp原理,即数据一致性原理,分区容错性原理eureka 原理是eureka server 和 eureka clientzk 原理 为leader 和 server2,ribbon 客户端负载均衡同样 还有一个 负载均衡器,n...
2019-12-11 14:28:09
1042
原创 TCP/IP 与 HTTP
TCP/IP协议是一个四层的网络体系结构1,应用层四层体系中的最高层,为用户提供进程服务。在这层中,有众多的我们所熟知的应用层协议,例如超文本协议(HTTP),文件的FTP,支持邮件的SMTP2,运输层四层体系中的第二层,为两个主机之间的进程通信提供服务因为每个每个主机可以有多个进程,所以运输层存在复用和分用功能复用:多个进程之间可以共同使用运输层分用:运输层可将多个进程的信息提交...
2019-05-29 10:43:08
476
原创 类加载的时机
类被加载到虚拟中直到它被卸载会有如下生命周期加载,验证,准备,解析,初始化,使用,卸载。其中验证,准别,解析,统称为连接加载,验证,准备,初始化,卸载,这五个步骤顺序是固定的。但是解析可以在初始化之前进行解析也可以在初始化之后进行解析。类初始化时机1,new, getstatic, putstatic, invokestatic, 遇到这个四条指令,类没有被初始化过的时候,将会被初始...
2019-05-23 23:27:44
190
原创 class类文件结构
.java文件,会被编译为可在虚拟机上运行的class文件。class文件是一个以8位字节为基础的二进制数据流,当大数据超过八位时,就会被分为若干个八位字节的文件进行存储。class文件内部紧密排列,无间隙存在。class文件是一个类似于c语言存贮的伪结构体。伪结构体中仅仅只包括无符号数,以及表,解析都是以这两种数据类型为基础进行解析的。无符号数为基本数据类型,以u1,u2,u4,u8来代...
2019-05-06 20:28:17
216
1
原创 垃圾收集器
1,serial 垃圾收集器在1.3.1以前,这是唯一的垃圾收集器特性:单线程收集,在进行垃圾收集时,用单个的cpu和单个的线程进行收集,那么这样它就会停掉剩下的所有的线程。但是至今,垃圾的收集的停顿问题,并没有解决。在client模式(虚拟机的委托者模式,启动快,运行慢)serial仍然是默认的收集模式,它的停顿,只有几十毫秒,或者几毫秒,使用并无太大问题。2,parNew 垃圾收集...
2019-04-26 14:55:10
123
原创 JVM垃圾回收算法
GC 回收的都是老年代的对象,判断老年代的算法有如下几种1,引用计数算法:给对象中添加一个引用计数器,每当这个对象呗引用的时候,引用计数器加1,失效则减1,当引用计数器归零的时候,这个对象就死了。但是,如果两个对象相互引用,引用一直未失效,但是gc也会回收,说明,jvm中判断对象已死,并不是用的引用计数法。2,根据搜索法:一系列的GC Roots 的对象作为起始对象,开始往下搜索,搜索走过...
2019-04-22 17:06:10
175
原创 jvm内存划分
1,程序计数器执行java方法时,计数器中记录的是当前程序在虚拟机中的字节码指令地址 全称:虚拟机字节码指令地址多线程时,线程之间进行切换,一个计数器无法记录多个线程的信息,此时需要多个计数器,每个线程都会有一个计数器,各个线程之间相互不影响,这类计数器被称之为 “线程私有”2,虚拟机栈 stacksjava 方法执行的内部内存, 方法执行的时候会创建栈针,用于储存 变量表,动态连,操作栈...
2019-04-22 17:00:04
158
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅