美文网首页
Spark笔记-001-GC

Spark笔记-001-GC

作者: 叫我小明谢谢 | 来源:发表于2018-06-10 01:34 被阅读0次

我真的不懂Java...

GC急速入门

  • Java对象在内存中的结构

  • 如何确定对象可以被回收

    • java通过引用访问堆中对象
    • 通过根节点可达性分析确定可以被回收。本地变量表引用的对象,方法区静态属性引用的对象,常量引用的对象,本地方法栈中JNI引用的对象,可以作为根节点。
  • 如何进行垃圾回收

    • Mark-Sweep
    • Copying
    • Mark-Compact
    • 分代
  • 分代
    分为新生代,老年代,永久代。
    新对象分在Eden和Survivor1,如果空间不足,发生MinorGC,将Eden,Survivor1中存活的对象移动到Survivor2中,将Eden,Survivor1中对象清理掉。如果Survivor2中也不够,那么放到老年代。接下来对象分配到Eden和Survivor2中,也就是说Survivor1和2角色互换了。

public class GCTest {
    public static void test(){![spark-jvm.png](https://img.haomeiwen.com/i12606989/84091793beb64f11.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

        String s = new String("abc");
    }
    public static void main(String[] args){
        while(true){
            test();
        }
    }
}  
  • 看一眼


    YoungGen.png

    这里面Eden Space转折处发生Miner GC, 存活对象被放入Survivor1,可以看出上次存活对象是放入Survivor2的,这两个空间使用是交替的。

Spark内存与JVM关系

写不动了先盗个图以后补,困了。


spark-jvm.png

相关文章

  • Spark笔记-001-GC

    我真的不懂Java... GC急速入门 Java对象在内存中的结构 如何确定对象可以被回收java通过引用访问堆中...

  • Spark 2.3.1测试笔记二:SortExec性能测试1

    前言 本例基于1 Spark 2.3.0测试笔记一:Shuffle到胃疼 2 Spark 2.3.0测试笔记二:还...

  • spark

    *Spark Spark 函数Spark (Python版) 零基础学习笔记(一)—— 快速入门 1.map与fl...

  • spark 学习笔记

    Spark学习笔记 Data Source->Kafka->Spark Streaming->Parquet->S...

  • SKIL/配置/Spark解释器

    Spark解释器 可以配置笔记本和Zeppelin Spark 解释器,以使用Spark来获得更多的处理能力。如果...

  • Spark Core 学习笔记

    Spark Core 学习笔记 1、Spark 简介 ​ Spark 是一种用于大规模数据处理的统一计算引擎...

  • spark核心编程

    Spark 学习笔记 Spark 架构及组件 client:客户端进程,负责提交job到master Driver...

  • 2020-03-17

    spark学习笔记centos安装Oracle VirtualBox: Centos安装Vagrant

  • Spark Task 的执行流程④ - task 结果的处理

    本文为 Spark 2.0 源码分析笔记,其他版本可能稍有不同 Spark Task 的执行流程③ - 执行 ta...

  • 初识Windows下Python开发Spark

    最近需要在Windows上配置python 开发 Spark应用,在此做一个总结笔记。 Spark 简介 Spar...

网友评论

      本文标题:Spark笔记-001-GC

      本文链接:https://www.haomeiwen.com/subject/ibaxeftx.html