JVM
文章平均质量分 92
HLA_胡
2016.06-2019.08 猫眼电影
2019.08-至今 头条西瓜视频
展开
-
Class文件结构
1、概述Class文件是一组以8位字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在Class文件中,中间没有添加任何分隔符,这使得整个Class文件中存储的内容几乎全部都是程序运行的必要数据。根据Java虚拟机规范的规定,Class文件格式采用一种类似于C语言结构体的伪结构来存储,这种伪结构中只有两种数据类型:无符号数和表。无符号数:属于基本数据类型,以u1、u2、u4、原创 2015-07-14 19:48:46 · 1862 阅读 · 0 评论 -
java内存分配
1、概述Java源代码被编译器编译成class文件。而并不是底层操作系统可以直接执行的二进制指令(比如Windows OS的.exe文件)。因此,我们需要有一种平台可以解释class文件并运行它。而做到这一点的正是Java 虚拟机(JVM)。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。实际上,J原创 2015-07-13 21:15:21 · 741 阅读 · 2 评论 -
JVM类加载机制
1、概述当Java编译器编译好.class文件之后,我们需要使用JVM来运行这个class文件。那么最开始的工作就是要把字节码从磁盘输入到内存中,这个过程我们叫做【加载】。加载完成之后,我们就可以进行一系列的运行前准备工作了,比如:为类静态变量开辟空间,将常量池存放在方法区内存中并实现常量池地址解析,初始化类静态变量等等。java类的生命周期指一个class文件从加载到卸载的全过程原创 2015-07-14 21:08:16 · 1298 阅读 · 2 评论 -
java垃圾回收与内存分配
1、概述说到垃圾回收(Garbage Collection,GC),很多人就会自然而然地把它和Java联系起来。在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,这一切都交给了JVM来处理。顾名思义,垃圾回收就是释放垃圾占用的空间,那么在Java中,什么样的对象会被认定为“垃圾”?那么当一些对象被确定为垃圾之后,采用什么样的策略来进行回收(释放空间)?在目前的商业虚拟机中,有哪些典原创 2015-07-14 16:00:43 · 1598 阅读 · 0 评论 -
JVM 面试问题
响应时间(RT):系统处理请求的时间吞吐量:单位时间内处理请求的数量QPS:每秒的响应请求数,也即是最大吞吐能力。(吞吐量的增大,有时会把平均响应时间作为牺牲,来换取一段时间处理更多的请求)问题 答案 JVM 内存划分 栈参考: https://blog.csdn.net/seebetpro/article/details/49202037...原创 2019-08-16 16:51:06 · 358 阅读 · 0 评论 -
JVM-性能调优
来源:JVM性能调优的6大步骤,及关键调优参数详解1.JVM调优目的对JVM内存的系统级的调优主要的目的是减少GC的频率和Full GC的次数。1.1.Full GC会对整个堆进行整理,包括Young、Tenured和Perm。Full GC因为需要对整个堆进行回收,所以比较慢,因此应该尽可能减少Full GC的次数。1.2.导致Full GC的原因1)年老代(Tenure...原创 2019-08-16 16:53:51 · 493 阅读 · 1 评论 -
JVM-性能监控分析工具
来源:4大JVM性能分析工具详解,及内存泄漏分析方案1.VisualVMVisualVM 是javajdk自带的牛逼的调优工具,也是平时使用最多调优工具,几乎涉及了jvm调优的方方面面。启动起来后和jconsole 一样同样可以选择本地和远程,如果需要监控远程同样需要配置相关参数。这个工具放在JDK安装目录的bin目录下(例:/Library/Java/JavaVirtualMa...原创 2019-08-16 17:11:25 · 413 阅读 · 0 评论