摘要: 类加载的过程 一、加载 加载时都做了些什么? 1、通过类的全限定名获取存储该类的class文件 2、解析成运行时数据,即instanceKlass实例,存储在方法区 3、在堆区生成该类的class对象,即instanceMirrorKlass实例 a、klass模型 从继承关系上能看出来,类的元信息 阅读全文
posted @ 2020-10-27 10:27 许明初 阅读(164) 评论(0) 推荐(1) 编辑
摘要: 想要搞清这个问题要从mysql和ES的索引数据结构下手,咱们先了解一下mysql的索引结构,然后再了解一下ES的索引结构,然后再进行对比这个问题就会很清楚了。 mysql关系型数据库索引原理: 数据库的索引是B+tree结构 主键索引是聚合索引,其他索引是非聚合索引 聚合索引: 可以通过主键直接找到 阅读全文
posted @ 2020-03-09 18:08 许明初 阅读(5070) 评论(1) 推荐(2) 编辑
摘要: 由于未创建.gitignore,在提交项目时会出现大量的编译文件。所以需要对编译生成的文件进行过滤,避免添加到版本库中了。 1、为避免冲突首先切换到项目的根目录 $ git pull 2、在根目录中进行缓存清理 $ git rm -r --cached . 3、在根目录创建.gitignore文件 阅读全文
posted @ 2019-11-28 09:54 许明初 阅读(812) 评论(0) 推荐(0) 编辑
摘要: 概述 看多shell脚本实例自然就会有shell脚本的编写思路了,所以我一般比较推荐看脚本实例来练习shell脚本。下面分享几个shell脚本实例。 一、监测Nginx访问日志Exception情况,并做相应动作 假设服务器环境为lnmp,监控出现Exception错误,并钉钉通知。 #场景: #1 阅读全文
posted @ 2019-08-09 16:56 许明初 阅读(4259) 评论(0) 推荐(0) 编辑
摘要: IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO,异步非阻塞的AIO 一、BIO 在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况下服务端需要对每个请求建立一堆线程等待请 阅读全文
posted @ 2019-08-07 15:04 许明初 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 传输控制协议TCP简介 面向连接的、可靠的、基于字节流的传输层通信协议 将应用层的数据流分割成报文段并发送给目标节点的TCP层 数据包都有序号,对方收到则发送ACK确认,未收到则重传 使用校验和来校验数据在传输过程中是否有误 TCP Flags URG:紧急指针标志;当它为1时是紧急指针有效,为0则 阅读全文
posted @ 2019-06-16 14:07 许明初 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 一、进程和线程的区别 进程是资源分配的最小单位,线程是CPU调度的最小单位 所有与进程相关的资源,都被记录在PCB中 进程是抢占处理机的调度单位;线程属于某个进程,共享其资源 线程只由堆栈寄存器、程序计数器和TCB组成 总结 线程不能看做独立应用,而进程可看做独立应用 进程有独立的地址空间,相互不影 阅读全文
posted @ 2019-06-14 09:11 许明初 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 前言 大家都知道springboot为我们做的自动配置,很方便快捷,但是不懂springboot内部启动原理,以后难免会吃亏,接下来我们一起一步步揭开springboot的神秘面纱,让它不在神秘。 原博客地址:https://www.cnblogs.com/shamo89/p/8184960.htm 阅读全文
posted @ 2019-06-11 21:28 许明初 阅读(3463) 评论(0) 推荐(0) 编辑
摘要: https://www.cnblogs.com/baihuitestsoftware/articles/6483690.html java内存模型是什么? Java内存模型规定和指引Java程序在不同的内存架构、CPU和操作系统间有确定性地行为。它在多线程的情况下尤其重要。Java内存模型对一个线程 阅读全文
posted @ 2019-05-30 17:06 许明初 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 锁模块 常见问题 一、MyISAM与InnoDB关于锁方面的区别是什么 MyISAM默认用的是表级锁,不支持行级锁 InnoDB默认用的是行级锁,也支持表级锁 InnoDB不支持FULLTEXT类型的索引 InnoDB中不保存表的具体行数,也就是说,执行select count(*) from ta 阅读全文
posted @ 2019-05-27 11:41 许明初 阅读(824) 评论(1) 推荐(1) 编辑