首页
Java
Java 进阶 - JVM
C 语言
Spring
设计模式
算法
数据库
SQL 基础
MySQL
框架
中间件
架构设计
工具
部署
成长感悟
关于
1
06-Spring-Boot源码分析
2
05-Spring-MVC源码分析
3
04-Spring-Transaction源码分析
4
03-Spring-Task源码分析
5
02-Spring-Context源码分析
周怡的技术日记
累计撰写
35
篇文章
累计创建
4
个标签
累计收到
1
条评论
栏目
首页
Java
Java 进阶 - JVM
C 语言
Spring
设计模式
算法
数据库
SQL 基础
MySQL
框架
中间件
架构设计
工具
部署
成长感悟
关于
搜索
标签搜索
Java
SpringBoot
Spring
MySQL
目 录
CONTENT
以下是
Java
相关的文章
2022-07-31
Ch4-Java程序运行优化_00-Java运行期优化
运行期优化我们知道,Java 是解释执行的,可是解释执行毕竟还是有点慢的,这也使得 Java 一直被认为是效率低下的语言……,不过随着即时编译技术的发展,Java 的运行速度得到了很大的提升,在本篇文章中,我们将会对 Java 的运行期优化,也就是即时编译 (Just In Time, JIT) 时
2022-07-31
464
0
0
Java 进阶 - JVM
2022-07-31
Ch3-虚拟机性能监控及故障处理_02-虚拟机调优案例分析
虚拟机调优案例分析虚拟机调优案例分析高性能硬件上的程序部署策略服务系统经常出现卡顿(Full GC 时间太长)除了 Java 堆和永久代之外,会占用较多内存的区域从 GC 调优角度解决新生代存活大量对象问题(Minor GC 时间太长)高性能硬件上的程序部署策略补充:64 位虚拟机在 Java EE
2022-07-31
409
0
0
Java 进阶 - JVM
2022-07-31
Ch3-虚拟机性能监控及故障处理_01-JVM常见参数设置
JVM 常见参数设置JVM 常见参数设置内存设置参数设置经验收集器设置参数内存设置参数-Xms:初始堆大小,JVM 启动的时候,给定堆空间大小。-Xmx:最大堆大小,如果初始堆空间不足的时候,最大可以扩展到多少。-Xmn:设置年轻代大小。整个堆大小 = 年轻代大小 + 年老代大小 + 持久代大小。持
2022-07-31
415
0
0
Java 进阶 - JVM
2022-07-31
Ch3-虚拟机性能监控及故障处理_00-常用虚拟机性能监控工具
常用虚拟机性能监控工具常用虚拟机性能监控工具JDK 命令行工具补充:ps 命令 (Linux)JDK 命令行工具其中的重中之重是 jstat 命令!而它最常用的参数就是 -gcutil,使用格式如下:jstat -gcutil [pid] [intervel] [count]输出如下:S0:堆上 S
2022-07-31
366
0
0
Java 进阶 - JVM
2022-07-31
Ch2-Java虚拟机程序执行_附录0-实现Java类的热替换
实现 Java 类的热替换什么是热替换及其实现原理实现简单的 Java 类热替换需求分析实现类加载器什么是热替换及其实现原理热替换是在不停止正在运行的系统的情况下进行类(对象)的升级替换;这要求虚拟机中要存在同一个类的两个不同版本。可我们知道,我们是无法将同一个类加载两遍的,想要实现这点,我们需要让
2022-07-31
362
0
0
Java 进阶 - JVM
2022-07-31
Ch2-Java虚拟机程序执行_02-虚拟机字节码执行引擎_02-基于栈的字节码解释执行引擎
基于栈的字节码解释执行引擎这个栈,就是栈帧中的操作数栈。解释执行先通过 javac 将代码编译成字节码,虚拟机再通过加载字节码文件,解释执行字节码文件生成机器码,解释执行的流程如下:词法分析 -> 语法分析 -> 形成抽象语法树 -> 遍历语法树生成线性字节码指令流指令集分类基于栈
2022-07-31
360
0
0
Java 进阶 - JVM
2022-07-31
Ch2-Java虚拟机程序执行_02-虚拟机字节码执行引擎_01-方法调用
Java 的方法的执行分为两个部分:方法调用:确定被调用的方法是哪一个;基于栈的解释执行:真正的执行方法的字节码。在本节中我们将对方法调用进行详细的讲解,我们知道,一切方法的调用在 Class 文件中存储的都是常量池中的符号引用,而不是方法实际运行时的入口地址(直接引用),直到类加载的时候,甚至是实
2022-07-31
391
0
0
Java 进阶 - JVM
2022-07-31
Ch2-Java虚拟机程序执行_02-虚拟机字节码执行引擎_00-虚拟机栈栈帧结构
虚拟机栈栈帧结构局部变量表局部变量表的空间分配Slot 的复用操作数栈动态连接方法返回地址局部变量表存放方法参数和方法内部定义的局部变量;Java 程序编译为 class 文件时,就确定了每个方法需要分配的局部变量表的最大容量。最小单位:Slot;一个 Slot 中可以存放:boolean,byte
2022-07-31
381
0
0
Java 进阶 - JVM
2022-07-31
Ch2-Java虚拟机程序执行_01-虚拟机的类加载机制
虚拟机的类加载机制类加载的时机类的显式加载和隐式加载类加载的过程类的生命周期加载加载的 3 个阶段分类验证准备解析初始化类加载器如何判断两个类 “相等”类加载器的分类双亲委派模型类加载的时机JVM 会在程序第一次主动引用类的时候,加载该类,被动引用时并不会引发类加载的操作。也就是说,JVM 并不是在
2022-07-31
402
0
0
Java 进阶 - JVM
2022-07-31
Ch2-Java虚拟机程序执行_00-Class文件的组成结构
Class 文件是一组以 8 位字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在 Class 文件中,中间没有任何分隔符。Java 虚拟机规范规定 Class 文件采用一种类似 C 语言结构体的伪结构来存储数据,这种伪结构中只有两种数据类型:无符号数和表,我们之后也主要对这两种类型的数
2022-07-31
345
0
0
Java 进阶 - JVM
1
2