草庐IT

jvm调优

全部标签

十三、Docker调优

本章节将分享一些常见的docker调优方法,不尽完全,慢慢优化。一、修改数据存放目录由于docker默认的数据存放目录/var/lib/docker/,该目录默认是创建在根文件目录下的。而我们一般在安装系统时给系统盘分配的磁盘空间一般不会太大,一般情况下几十G到一百G,用一段时间后可能造成系统盘被占满。所以有时候我们需要修改docker的默认目录。1)首先通过df-h查看文件系统的挂载和使用情况[root@k8s-m3~]#df-hFilesystemSizeUsedAvailUse%Mountedondevtmpfs3.9G03.9G0%/devtmpfs3.9G03.9G0%/dev/sh

JVM-性能优化工具 MAT

一、MAT下载和安装1、概述MAT(MemoryAnalyzerTool)工具是一款功能强大的]ava堆内存分析器。可以用于查找内存泄漏以及查看内存消耗情况。MAT是基于Eclipse开发的,不仅可以单独使用,还可以作为插件的形式嵌入在Eclipse中使用。是一款免费的性能分析工具,使用起来非常方便。2、下载地址:https://www.eclipse.org/mat/downloads.php我目前电脑的JDK安装环境是1.8的,所以需要下载对应JDK1.8版本的MAT版本3、安装下载后解压,点击MemoryAnalyzer.exe进行启动4、安装出现的报错问题4.1、MAT版本和JDK版本

当面试被问到jvm(Java虚拟机)时,如何将面试官引入自己的节奏?

本文目录前言快问快答抛砖引玉锦上添花好书推荐总结前言作为一名Java开发工程师,不管是校招还是社招jvm一定是必问必会的知识点。虽然说真正开发中用到的不多,甚至可以说用不到(对于刚入行或者Java初级),但是当面试官问出来,就是想考察你对知识的一个广度,如果你能答得很好,那么恭喜你,你已经赢得面试官的好感。在接下来的面试中你会很自信。当然如果你对jvm了解的很深刻,你还可以将面试官引导到自己的节奏。在做自我介绍的时候可以可以强调自己熟悉jvm,那么面试官就有很大概率问到jvm。这篇文章就来详细的介绍一下面试中遇到有关jvm相关面试题该怎么回答。虽说做不到吊打面试官,但是至少能和面试官有的聊,对

OpenJDK17-JVM源码阅读-ZGC-并发标记

1、ZGC简介1.1介绍ZGC是一款低延迟的垃圾回收器,是Java垃圾收集技术的最前沿,理解了ZGC,那么便可以说理解了java最前沿的垃圾收集技术。从JDK11中作为试验特性推出以来,ZGC一直在不停地发展中。从JDK14开始,ZGC开始支持Windows。在JDK15中,ZGC不再是实验功能,可以正式投入生产使用了。在最新的JDK开源库中,已经出现了分代收集的ZGC代码,预计不久的将来会正式发布,到时相信ZGC各项表现将会更加优秀。图1分代收集的ZGC如上图,JDK21中已经有了分代ZGC的Feature。1.2ZGC特征低延迟大容量堆染色指针读屏障1.3垃圾收集阶段图2ZGC运作过程如上

MySQL 特定的查询性能调优

我在MySQL查询性能方面遇到了问题。表(InnoDB):+--------------------+---------------------+------+-----+-------------------+-------+|Field|Type|Null|Key|Default|Extra|+--------------------+---------------------+------+-----+-------------------+-------+|st_resource_id|varchar(32)|NO|MUL|NULL|||st_sub_resource_id|v

面试之MySQL调优问题

文章目录前言一、MySQL的底层原理粗解1.1MySQL的底层运作1.2MySQL的存储方式二、索引(重点内容)2.1索引是什么?2.2MySQL调优到底是调啥的2.3如何创建一个索引2.3.1在创建表的时候创建索引2.3.2通过更新语句来创建索引2.4索引的底层原理2.4.1使用二叉树来进行模拟索引底层(淘汰)2.4.2使用红黑树(平衡二叉树)树来进行模拟索引底层(淘汰)2.4.3使用B树来进行模拟索引底层(淘汰)2.4.4使用B+树来进行模拟索引底层(选用)3聚集索引与非聚集索引的介绍3.Explain关键字的使用3.1Explain的介绍总结前言对于MySQL调优问题是作为一个后端开发者

猿创征文 |【高级篇】Java 进阶之JVM实战

文章目录⚡前言一、面试题解析二、JVM理论详解⛅JVM的位置❄️JVM的体系结构⏳类加载器三、JVM双亲委派机制四、Native关键字五、PC寄存器与方法区六、栈与堆七、三种JVM、新生区、老年区、永久区⛵小结⚡前言JVM是Java实现跨平台的基础,所有的Java程序都基于JVM,那么JVM底层到底是如何实现的呢,Java目前已火了20多年了,下面我们就一起来看看这个强大的JVM!!!一、面试题解析以下是面试高频题请你谈谈你对JVM的理解?Java8虚拟机和之前的变化更新?JVM(JavaVirtualMachine):虚拟机,源文件.java在虚拟机中通过编译器编译成字节码文件.class,

JVM之内存模型

前言首先说明下JVM内存模型和Java内存模型这是两个不同的概念,不要搞混淆了。JVM内存模型定义了Java程序在运行时如何分配、使用和释放内存,跟存储和执行相关,也就是常说的运行时数据区域。Java内存模型(JavaMemoryModel,简称JMM)是一种规范,定义了线程和主内存之间的抽象关系,所有的JVM都有具体的实现,Java内存模型规范中规定了所有的变量都存储在主内存中,而每一个线程的执行在JVM中都有自己的工作内存,这就涉及主内存、工作内存之间数据的可见性、一致性、有效性等问题,Java内存模型就是规定如何正确处理这些问题的,由具体的JVM去实现。本文基于Hotspot虚拟机讲解J

Java (JVM) 内存模型——Java 中的内存管理

 在本文中,我们将向您展示如何使用-XX:+PrintFlagsFinal查找堆大小的详细信息。堆大小初始堆大小为物理内存的1/64,最多1GB最大堆大小为物理内存的1/4,最高为1GB不过以上算法仅供参考,不同VM可能会有差异。目录1.Java内存概述1.JavaHeapSize

spark SQL 任务参数调优1

1.背景要了解spark参数调优,首先需要清楚一部分背景资料SparkSQL的执行原理,方便理解各种参数对任务的具体影响。一条SQL语句生成执行引擎可识别的程序,解析(Parser)、优化(Optimizer)、执行(Execution)三大过程。其中SparkSQL解析和优化如下图Parser模块:未解析的逻辑计划,将SparkSql字符串解析为一个抽象语法树/AST。语法检查,不涉及表名字段。Analyzer模块:解析后的逻辑计划,该模块会遍历整个AST,并对AST上的每个节点进行数据类型的绑定以及函数绑定,然后根据元数据信息Catalog对数据表中的字段和基本函数进行解析。Optimiz