转自http://www.rowkey.me/blog/2016/11/02/java-profile/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io JVM常用参数选项 jvm 可配置的参数选项可以参考 Oracle 官方网站给出的相关信息:http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html 下面只列举其中的几个常…
JVM性能调优 一.调优策略 对于GC的性能主要有2个方面的指标:吞吐量throughput(工作时间不算gc的时间占总的时间比)和暂停pause(gc发生时app对外显示的无法响应). 1.调优的目的 调优的最终目的当然增大吞吐量,减少暂停时间咯,映射到GC层面主要关心下面这两点: (1)将转移到老年代的对象数量降低到最小. (2)减少full GC的执行时间.(尽量减少GC的次数) 那什么情况对象会转移到老年代,主要有这四种: (1)新生代对象每经历依次minor gc,年龄会加一,当达到年…
JVM内存结构: 主要分为:方法区.堆.虚拟机栈.本地方法栈.程序计数器,其中方法区和堆是线程共享的,其他的都是线程隔离的. 方法区: 主要存放类的信息.静态变量.常量.编译后的方法代码,永久代PermGen是方法区的实现,JDK1.8后永久代被移除换成了元空间Metaspace,元空间的本质和永久代类似,都是对方法区的实现.不过元空间与永久代之间最大的区别在于:元空间并不在虚拟机中,而是使用本地内存.元空间大小,理论上取决于32位/64位系统可虚拟的内存大小. 堆: 唯一用途就是用来存放对象实…
spark streaming 调优的几个角度: 高效地利用集群资源减少批数据的处理时间 设置正确的批容量(size),使数据的处理速度能够赶上数据的接收速度 内存调优 Spark SQL 可以通过调用 sqlContext.cacheTable("tableName")方法来缓存使用柱状格式的表.…
<深入理解Java虚拟机:JVM高级特性与最佳实践>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230062566 内容简介 作为一位java程序员,你是否也曾经想深入理解java虚拟机,但是却被它的复杂和深奥拒之门外?没关系,<深入理解java虚拟机:jvm高级特性与最佳实践>极尽化繁为简之妙,能带领你在轻松中领略java虚拟机的奥秘.<深入理解java虚拟机:jvm高级特性与最佳实践>是近年来国内出版的唯一一本与…
目录 概述 第一章: 走进Java 第二章: Java内存区域与内存溢出异常 第三章: 垃圾收集器与内存分配策略 第四章: 虚拟机性能监控与故障处理 第五章: 调优案例分析与实战 第六章: 类文件结构 第七章: 虚拟机类加载机制 第八章: 虚拟机字节码执行引擎 第九章: 类加载及执行子系统的案例 第十章: 早起(编译期)优化 第十一章: 晚期(运行期)优化 第十二章: Java内存模型与线程 第十三章: 线程安全与锁优化 概述 本文是笔记的目录. 书籍中是基于Java1.7的. 去网上找这本书,…
前言 在遇到实际性能问题时,除了关注系统性能指标.还要结合应用程序的系统的日志.堆栈信息.GClog.threaddump等数据进行问题分析和定位.关于性能指标分析可以参考前一篇JVM性能调优实践--性能指标分析. JVM的调优和故障处理可以使用JDK的几个常用命令工具.因为本文是基于Docker容器内部的Springboot服务.需要调整一下docker容器的启动参数,才可以使用jmap等工具.jmap命令需要使用Linux的Capability的PTRACE_ATTACH权限.而Docker…
JVM系列笔记目录 虚拟机的基础概念 class文件结构 class文件加载过程 jvm内存模型 JVM常用指令 GC与调优 了解HotSpot常用命令行参数 JVM的命令行参数参考: https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html -标准 所有版本支持 -X 非标准 特定版本支持 -XX 不稳定 下个版本可能会取消 常见和本文中可能用到的参数记录一下,具体垃圾回收器的参数后续调优的详细说明. 参数 说明…
park submit参数介绍 你可以通过spark-submit --help或者spark-shell --help来查看这些参数.   使用格式:  ./bin/spark-submit \   --class <main-class> \   --master <master-url> \   --deploy-mode <deploy-mode> \   --conf <key>=<value> \   ... # other opti…
spark submit参数介绍 你可以通过spark-submit --help或者spark-shell --help来查看这些参数. 使用格式:  ./bin/spark-submit \ --class <main-class> \ --master <master-url> \ --deploy-mode <deploy-mode> \ --conf <key>=<value> \ # other options <applica…