
JVM
灬一抹丶清风
棒棒的_(:з」∠)_
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
第一章 走进Java
本章介绍了Java技术体系的过去、现在和未来的发展趋势原创 2019-07-29 14:53:54 · 100 阅读 · 0 评论 -
第十二章 Java内存模型与线程
概述并发应用场景:①充分利用计算机处理器的能力;②一个服务端同时为多个客户端提供服务。衡量一个服务性能的高低好坏,每秒事务处理数是最重要的指标之一。硬件的效率与一致性Java内存模型主内存和工作内存①Java内存模型的主要目标是定义程序中各个变量的访问规则 – 虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节。此处的变量(Variables)包括了实例字段、静态字段和构成数...原创 2019-09-16 16:10:00 · 156 阅读 · 0 评论 -
第十一章 晚期(运行期)优化
“热点代码”(Hot Spot Code): 运行特别频繁的方法或代码块;为了提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成与本地平台相关的机器码,并进行各种层次的优化,完成这个任务的编译器称为即时编译器(Just In Time Compiler,下文中简称JIT编译器)。“热点代码”有两类:①被多次调用的方法 – 这是由方法调用触发的编译,因此编译器理会以整个方法作为编译对象...转载 2019-09-12 17:50:32 · 272 阅读 · 0 评论 -
第十章 早期(编译期)优化
概述编译器分类:前端编译器:把 *.java 文件转变成 .class 文件的过程;JIT编译器:把字节码转变成机器码;AOT编译器:直接把 *.java 文件编译成本地机器码;Javac编译器解析与填充符号表①词法、语法分析:词法分析是将源代码的字符流转变为标记(Token)集合,单个字符是程序编写的最小元素,而标记则是编译过程的最小元素;语法分析是根据Token序列来构...原创 2019-09-11 17:40:57 · 288 阅读 · 0 评论 -
第九章 类加载及执行子系统的案例与实战
Tomcat:正统的类加载器架构一个功能健全的类加载器,都要解决以下几个问题:(1)部署在同一服务器上的两个web应用程序所使用的java类库可以实现相互隔离。这是最基本的需求,两个不同的应用程序可能会依赖同一个第三方类库的不同版本,不能要求一个类库在一个服务器中只有一份,服务器应当可以保证两个应用程序的类库可以相互独立使用。(2)部署在同一个服务器上的两个web应用程序所使用的java类库...原创 2019-08-27 17:54:22 · 156 阅读 · 0 评论 -
第八章 虚拟机字节码执行引擎
本章分析了虚拟机在执行字节码时如何找到正确的方法,如何执行方法内的字节码,以及执行字节码时涉及的内存结构。原创 2019-08-23 16:01:40 · 93 阅读 · 0 评论 -
第七章 虚拟机类加载机制
本章介绍了类加载过程的五个阶段,还介绍了类加载器的工作原理及其对虚拟机的意义。原创 2019-08-06 11:19:02 · 129 阅读 · 0 评论 -
第五章 调优案例分析与实战
案例分析B/S:“浏览器/服务器”模式,好处就是维护和升级方式简单,客户端是浏览器基本不需要维护,只需要维护升级服务器端就可以C/S:“客户端/服务器”模式,好处就是可以降低通信成本且更安全,但升级维护比较困难高性能硬件上的程序部署策略通过64为JDK来使用大内存面临问题:①内存回收导致长时间停顿②64位JDK性能低于32位JDK③产生堆溢几乎无法产生堆转储快照(产生的文件...原创 2019-08-01 14:29:06 · 220 阅读 · 0 评论 -
第六章 类文件结构
Class类文件是Java虚拟机执行引擎的数据接口,也是Java技术的基础支组之一。原创 2019-08-05 10:47:19 · 134 阅读 · 0 评论 -
第四章 虚拟机性能监控与故障处理工具
JDK的命令行工具JDK可视化工具JConsole:Java监视与管理控制台通过JDK/bin 目录下的jconsole.exe启动VisualVM:多合一故障处理工具原创 2019-07-31 17:07:31 · 115 阅读 · 0 评论 -
第三章 垃圾收集器与内存分配策略
内存回收与垃圾收集器在很多时候都是影响系统性能、并发能力的主要因素之一,因此必须了解每个具体收集器的的行为、优势、劣势和调节参数原创 2019-07-31 14:48:56 · 80 阅读 · 0 评论 -
第二章 Java内存区域与内存溢出异常
通过本章的学习,我们明白了虚拟机里面的内存是如何划分的,什么样的代码和操作可能导致内存溢出异常。原创 2019-07-30 13:36:35 · 172 阅读 · 0 评论 -
第十三章 线程安全和锁优化
概述人们很难想象现实中的对象在一项工作进行期间,会被不停地中断和切换,对象的属性(数据)可能会在中断期间被修改和变“脏”,而这些事情在计算机世界中则是很正常的事情。有时候,良好的设计原则不得不向现实做出一些让步,我们必须让程序在计算机中正确无误地运行,然后再考虑如何将代码组织得更好,让程序运行更快。对于“高效并发”来说,首先需要保证并发的正确性,然后在此基础上实现高效。线程安全“线程安全”有...原创 2019-09-16 18:03:19 · 116 阅读 · 0 评论