随笔分类 - JVM解读
摘要:新生代进入老年代 大对象直接进入老年代 经过多次minor gc依然在survivor区存活,进入老年代(大龄对象) 动态年龄判定:从年龄为1的对象开始累加,大于survivor区(这里指from或to)的一半时,记这个年龄和最大年龄阈值的最小值result,大于这个result的对象进入老年代 空
        阅读全文
            
摘要:JVM调优 单机大内存一个JVM,大内存会导致FULL GC停顿时间太长 使用若干个JVM建立逻辑集群,比如有10G内存,搞5个JVM,每台JVM只分配2G 64位JDK,由于指针膨胀等,比32位消耗更多内存, 要使用64位JDK,管理员能有把握将GC停顿时间控制到最低,低到不会影响用户使用,如何控
        阅读全文
            
摘要: 线程池 通过例子理解 例1 ~~~java package com.example.test; import com.google.common.util.concurrent.ThreadFactoryBuilder; import java.util.concurrent. ; / 核心线程
        阅读全文
            
摘要: JVM GC(jdk1.7) 一、minor gc  发生在Eden、From、To之间,垃圾对象清理,存活对象从【Eden、From】复制到To,或者【Eden、To】复制到From  晋升老年代  在Survivor存活的对象,一般情况下(注意这里用词),年龄达到一定阈值,将晋升到老年
        阅读全文
            
摘要:一、概念 程序编译后,生成class文件,经过加载、验证、准备、解析、初始化,最终使程序可以被JVM识别。 二、类的生命周期 类从被加载到虚拟机内存开始,到卸载出虚拟机内存结束,一共经历加载、验证、准备、解析、初始化、使用、卸载七个阶段。 其中验证、准备、解析统称为连接。 借用网上的图: 其中解析过
        阅读全文
            
摘要:1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 栈:方法执行时创建方法栈帧,存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象。4. 静态域(
        阅读全文
            
摘要:原文链接:https://www.jianshu.com/p/0d41057ed973 今天,刚部署的应用上,随便点点,系统崩溃了,看日志 这个是jvm虚拟机崩溃日志 下载下来: 查 可以知道在JDK 9中修正了这个Bug。 For details refer the following :http
        阅读全文
            
 
                     
                    
                 
                    
                
 
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号