JVM 基础篇08 —— 类文件结构

JVM的“无关性”谈论JVM的无关性,主要有以下两个:平台无关性:任何操作系统都能运行Java代码语言无关性:JVM能运行除Java以外的其他代码Java源代码首先需要使用Javac编译器编译成.class文件,然后由JVM执行.class文件,从而程序开始运行。JVM只认识.class文件,它不关

JVM 基础篇07 —— 性能设置

JVM性能调优详细可见性能调优系列章节(好吧,我已经打算后续有时间把性能调优重写了...)在高性能硬件上部署程序,目前主要有两种方式:通过64位JDK来使用大内存;使用若干个32位虚拟机建立逻辑集群来利用硬件资源。使用64位JDK管理大内存堆内存变大后,虽然垃圾收集的频率减少了,但每次垃圾回收的时间

JVM 基础篇06 —— 内存分配与回收策略

内存分配与回收策略对象的内存分配,就是在堆上分配(也可能经过JIT编译后被拆散非标量类型并间接在栈上分配),对象主要分配在新生代的Eden区上,少数情况下可能直接分配在老年代,分配规则不固定,取决于当前使用的垃圾收集器组合以及相关的参数配置。对象优先在Eden分配大多数情况下,对象在新生代Eden区

JVM 基础篇05 —— *JVM(ZGC为例)垃圾收集器

我们熟知的如G1收集器是2006年时引入HotspotVM的。当时最大的亚马逊网络服务实例只有1vCPU和1.7GB内存,而现在亚马逊在17年就已经推出8-16TB内存的虚拟服务器。(对,你没看错是内存!单位是TB,还是两位数!啥样的可以自行了解。反正我也没用过,更用不起😂)。像以前Hotspot

JVM 基础篇04 —— JVM(HotSpot为例)垃圾收集器

HotSpot垃圾收集器HotSpot虚拟机提供了多种垃圾收集器,每种收集器都有各自的特点,虽然我们要对各个收集器进行比较,但并非为了挑选出一个最好的收集器。我们选择的只是对具体应用最合适的收集器。新生代垃圾收集器Serial垃圾收集器(单线程)只开启一条GC线程进行垃圾回收,并且在垃圾收集过程中停

JVM 基础篇03 —— 垃圾收集策略与算法

程序计数器、虚拟机栈、本地方法栈随线程而生,也随线程而灭;栈帧随着方法的开始而入栈,随着方法的结束而出栈。这几个区域的内存分配和回收都具有确定性,在这几个区域内不需要过多考虑回收的问题,因为方法结束或者线程结束时,内存自然就跟随着回收了。而对于Java堆和方法区,我们只有在程序运行期间才能知道会创建

JVM 基础篇02 —— JVM (HotSpot为例)中的对象

对象的内存布局在HotSpot虚拟机中,对象的内存布局分为以下3块区域:对象头(Header)实例数据(InstanceData)对齐填充(Padding)对象头对象头记录了对象在运行过程中所需要使用的一些数据:哈希码GC分代年龄锁状态标志线程持有的锁偏向线程ID偏向时间戳对象头可能包含类型指针,通

JVM 基础篇01 —— JVM 内存结构

Java虚拟机的内存空间分为5个部分:程序计数器Java虚拟机栈本地方法栈堆方法区JDK1.8同JDK1.7比,最大的差别就是:元数据区取代了永久代。元空间的本质和永久代类似,都是对JVM规范中方法区的实现。不过元空间与永久代之间最大的区别在于:元数据空间并不在虚拟机中,而是使用本地内存。程序计数器

SpringCloud20 —— 进阶篇计划

一个不知道什么时候去实现的flag

SpringCloud 19 —— 配置中心之Nacos

前面在注册中心章节已经讲Nacos的介绍和基本使用讲解了,下面我们就直接来讲Nacos的配置中心功能,这一点是很不错的,把注册中心和配置中心功能合并在一起,减少了运维部署。
Your browser is out of date!

Update your browser to view this website correctly. Update my browser now

×