摘要: Class文件简介和发展历史 class文件是一组以8位字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑的排列在class文件之中,中间没有添加任何分隔符,整个class文件中存储的内容几乎全部是程序运行的必要数据,没有空隙存在 当遇到8位字节以上的空间数据项时,则会按照高位在前的方式分割成若 阅读全文
posted @ 2020-12-22 10:14 link_ed 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 知识 工具 数据 经验 案例1 问题:经常有用户反馈长时间出现卡顿的现象 处理思路: 偶发,所以不会是sql问题 监控cpu 监控内存 发现fullGC频繁,每次需要20-30s,停顿时间过长 总结: 大对象过多,jvm内存设置的过大,老年代经常占满触发fullgc,老年代内存过大每次fullgc时 阅读全文
posted @ 2020-12-22 09:45 link_ed 阅读(101) 评论(0) 推荐(0) 编辑
摘要: jdk安装包bin目录下的.exe 命令行工具都是依赖于tools.jar 命令行工具 jps 列出当前运行的jvm进程 usage: jps [-help] jps [-q] [-mlvV] [<hostid>] Definitions: <hostid>: <hostname>[:<port>] 阅读全文
posted @ 2020-12-22 09:43 link_ed 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 内存分配策略 优先分配到Eden -XX:+UseSerialGc 指定SerialGc垃圾收集器 jdk1.7 默认垃圾收集器Parallel Scavenge(新生代)+Parallel Old(老年代) jdk1.8 默认垃圾收集器Parallel Scavenge(新生代)+Parallel 阅读全文
posted @ 2020-12-22 09:38 link_ed 阅读(73) 评论(0) 推荐(0) 编辑
摘要: https://docs.oracle.com/javase/7/docs/ JDK java de JRE java runtime environment JVM java virtual machine 内存溢出模拟 java.lang.OutOfMemoryError: java heap 阅读全文
posted @ 2020-12-21 12:48 link_ed 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 垃圾回收 如何判定对象为垃圾对象 引用计数法 在对象中添加一个引用计数器,当有地方引用这个对象的时候,引用计数器+1,当引用失效时,引用计数器-1。引用计数器为零时认为失效 这种方法解决不了相互引用的情况 虚拟机一般不用 可达性分析法 定义GCRoot(根节点),从GCRoot往下寻找,对象与gcr 阅读全文
posted @ 2020-12-21 12:46 link_ed 阅读(58) 评论(0) 推荐(0) 编辑
摘要: Elasticsearch脑裂问题详细分析以及解决方案 什么是脑裂问题脑裂问题其实就是同一个集群的不同节点对于整个集群的状态有不同的理解,导致操作错乱,类似于精神分裂 怎么发现集群产生脑裂问题吧 1.Elasticsearch出现查询非常缓慢的情况 2.通过命令查看集群的状态 3.curl -XGE 阅读全文
posted @ 2020-12-21 00:16 link_ed 阅读(1794) 评论(0) 推荐(0) 编辑
摘要: 在java的多线程模块中,ThreadLocal是经常被提问到的一个知识点,提问的方式有很多种,可能是循序渐进也可能是就像我的题目那样,因此只有理解透彻了,不管怎么问,都能游刃有余。 这篇文章主要从以下几个角度来分析理解 1、ThreadLocal是什么 2、ThreadLocal怎么用 3、Thr 阅读全文
posted @ 2020-12-20 10:26 link_ed 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 分布式事务产生背景 数据库拆分 单库单表支撑不了业务时需要对数据库进行水平拆分。分库分表后,原来在一个数据库上就能完成的写操作,可能会跨多个数据库,就产生了跨数据库事务问题 业务服务化拆分 业务拆分后,一个完整的业务逻辑可能会涉及多个服务,多个服务之间存在跨服务事务问题 分布式事务理论基础 两阶段提 阅读全文
posted @ 2020-12-19 23:54 link_ed 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 在说说Java里有equals(上) 这篇文章里,文末我们提到了String底层是char数组来实现的,好多人当年上学时被二维数组,三维数组吓哭了吧。我们今天来讲讲数组,数组非常的重要,很多常用类,比如String等底层都是用数组来实现的,后续我们会一一讲到,多少人很久没用数组了?是否都在用Arra 阅读全文
posted @ 2020-12-16 00:53 link_ed 阅读(89) 评论(0) 推荐(0) 编辑