JVM

JVM分析+1,+=1,++的效率

在分别存储 `i j k`之后 `i++`是直接在局部变量表数组中存储i+1后的数值 `j=j+1`则需要先在常量池中声明1后再进行加的操作然后存储到局部变量表数组中 `k+=1`则和`k++`操作类似 ......
效率 JVM

Java JVM面试题

我分析了上百份大中小厂的面经,整理了 Java 面试中最最最常问的一些问题!小伙伴们可以对照着网站里面的文章学习或者准备面试。网站的内容会继续完善,欢迎你在评论区说出你遇到的高频面试题!林老师带你学编程(「Java 学习+面试指南」是一份涵盖大部分 Java 程序员所需要掌握的核心知识网站,准备 J ......
Java JVM

JVM

JVM JVM(Java Virtual Machine)是一种能够执行 Java 字节码的虚拟机,是实现 Java 跨平台特性的核心部分,他屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以在多种平台上不加修改地运行 JDK、JRE 与 ......
JVM

JVM实战-G1参数调优

G1简介 G1 GC,全称Garbage-First Garbage Collector,在JDK1.7中引入了G1 GC,从JAVA 9开始,G1 GC是默认的GC算法。通过-XX:+UseG1GC参数来启用。 G1收集器有分区概念,是工作在堆内不同分区上的收集器。G1的分区既可以是年轻代也可以是 ......
实战 参数 JVM G1

JVM内存参数的学习之三

JVM内存参数的学习之三 背景 研究启动性能时, 顺便看到了jmap -heap 1 的部分信息 看到: MinHeapFreeRatio、MaxHeapFreeRatio 自己突然以为是 Percentage的参数, 恍惚了好久. 才发现自己对内存的学习不够, 所以想多学习一下. 参数解释 Min ......
内存 参数 JVM

linux怎么启动一个java项目命令以及JVM参数配置

NAME=`ls -1r /app-server*.jar | head -1` nohup java -XX:+UseCompressedOops -XX:+UseCompressedClassPointers -XX:CompressedClassSpaceSize=1g -XX:+PrintG ......
命令 参数 项目 linux java

JVM内存模型

JVM内存模型 JDK7堆内存模型 内存模型说明: 1)Young(新生代) Young区被划分为三部分,Eden(ˈiːdn)区和两个大小严格相同的Survivor(sərˈvaɪvər)区,其中Survivor区间中,某一时刻只有其中一个是被使用的,另外一个留做垃圾收集时复制对象用,在Eden区 ......
模型 内存 JVM

JVM类加载机制

JVM类加载机制 类加载机制概念 概念说明: 1)虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验,解析和初始化,最终形成可以被虚拟机直接使用的Java类型。程序主动使用某个类时,如果该类还未被加载到内存中,则JVM会通过加载(loading)、连接(linking)、初始化(ini ......
机制 JVM

JVM垃圾回收机制

JVM垃圾回收机制 JVM垃圾回收机制术语 回收机制:在Java中,程序员是不需要显示的去释放一个对象的内存的,而是由虚拟机自行执行。在JVM中,有一个垃圾回收线程,它是低优先级的,在正常情况下是不会执行的,只有在虚拟机空闲或者当前堆内存不足时,才会触发执行,扫描那些没有被任何引用的对象,并将它们添 ......
机制 垃圾 JVM

JVM初了解

一、JVM常用启动参数说明 以 - 开头为标准参数,所有的 JVM 都要实现这些参数,并且向后兼容,如 -server。 -D 设置系统属性,如 -Dfile.encoding=UTF-8。 以 -X 开头为非标准参数,基本都是传给 JVM 的,默认 JVM 实现这些参数的功能,但是并不保证所有 J ......
JVM

使用jvm工具排查系统问题

java-jvm-tool Jstatd 远程连接(推荐) 不用重启项目 远程机配置 [demo@localhost jvmtest]$ vi jstatd.all.policy# 内容grant codebase "file:/home/demo/jdk1.8.0_171/lib/tools.ja ......
工具 问题 系统 jvm

JDK、JRE、JVM介绍

JDK(Java开发者工具):Java Development Kit JRE(Java运行环境):Java Runtime Environment JVM(Java虚拟机):Java Virtual Machine 关系:JDK包含JRE ......
JDK JRE JVM

玩转jvm

1:什么是JVM JVM是Java虚拟机(Java Virtual Machine)的缩写。它是Java编程语言的关键组成部分。JVM是一个运行在计算机上的虚拟机,它可以执行Java字节码(Java bytecode)程序。Java字节码是Java源代码经过编译后生成的中间代码,在JVM上可以被解释 ......
jvm

JVM适应Docker限制:动态调整内存

背景在现代应用开发中,容器化技术(如Docker)已经成为主流。但是,Java应用在容器中运行时面临着挑战:传统的JVM内存设置需要在启动时指定静态的堆内存大小,这种设置方法难以适应动态变化的容器环境。由于容器环境受到cgroup限制,传统的静态内存配置可能导致资源不足或浪费。因此,让JVM能够感知 ......
内存 动态 Docker JVM

springcloudalibabada搭建过程中springboot启动卡住起不来 (Started MoonceProviderApplication in 11.254 seconds (JVM running for 13.896))

如下图一样springcloudAlibaba在创建新模块之后启动新模块没有注册到nacos上,而是直接卡住起不来原因 原因是:引入了错误的web包: 解决办法: 引入相应的 spring-boot-starter-web 包: <dependency> <groupId>org.springfra ......

Java-Jvm中GC类型及执行时机

Java-Jvm中GC类型及执行时机 堆的结构 年轻代(Young Generation): Eden区: 在年轻代中,对象首先被分配到Eden区。大多数对象很快就会被回收,所以它们被分配到Eden区以提高分配速度。 Survivor区(S0和S1): Eden区中存活的对象会被移动到Survivo ......
时机 Java-Jvm 类型 Java Jvm

JVM调优

JVM调优 什么时候JVM调优 要对Java应用程序进行调优,优化JVM并不是第一选择。我们首先应该考虑软件架构和代码优化等方面,这方面的优化可能会取得更大的进步空间。因此假设我们已经对于软件架构、代码优化、数据库优化等等做过了一些努力,接着我们希望通过JVM调优来做一些事情,那么我们可以接着往下读 ......
JVM

如何使用Jemalloc跟踪JVM堆外内存泄漏

编译和安装jemalloc git clone https://github.com/jemalloc/jemalloc git checkout stable-4 ./autogen.sh ./configure --enable-perf make sudo make install 查看so装 ......
Jemalloc 内存 JVM

JVM理解

1、JVM是什么? JVM是Java Virtual Machine(Java虚拟机)的缩写,由一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域等组成。 他是帮助我们将java代码 生成编译后 的 class 文件。 2、JRE、JDK和JVM 的关系 JRE(Java Runt ......
JVM

[JVM] 应用诊断工具之Fastthread(在线诊断)

0 序言 背景 近期生产系统遇到了一个线程方面的问题,目前根因已定位到。现将fastthread这一诊断工具做一小结,便于以后快速使用 博主我遇到的线程问题:java.lang.OutOfMemoryError: unable to create new native thread java.lan ......
Fastthread 工具 JVM

JetBrains IntelliJ IDEA 2023.3 (macOS, Linux, Windows) - 功能强大,符合人体工程学的 JVM IDE

JetBrains IntelliJ IDEA 2023.3 (macOS, Linux, Windows) - 功能强大,符合人体工程学的 JVM IDE 请访问原文链接:https://sysin.org/blog/jb-idea-2023/,查看最新版。原创作品,转载请保留出处。 作者主页:s ......

JVM-垃圾回收器

JVM-垃圾回收器 Java虚拟机(JVM)常用的垃圾回收器主要包括 Serial、ParNew、Parallel Scavenge、Serial Old、Parallel Old、CMS(Concurrent Mark-Sweep)、G1(Garbage-First) 和 ZGC(Z Garbag ......
垃圾 JVM

[JVM] Java Heap Dump 分析 [转载]

0 序 缘起 近期项目上我负责的微服务出现了难以排查的问题,目前怀疑是 JVM线程方面的情况,但也需从 heap dump方面进一步印证,故需深入了解heap dump文件内容的各项含义。 本文主要转载了网友的观点,详见:参考文献 1 Heap Dump 分析 1.1 heapdump 简介 hea ......
Heap Dump Java JVM

[JVM] Java Thread Dump 分析 [转载]

0 序 缘起 近期项目上我负责的微服务出现了难以排查的问题,目前怀疑是 线程方面的情况,故需深入了解thread dump文件内容的各项含义。 本文转载了网友的观点,详见:参考文献 诊断 Java 应用的过程中, 我们经常要去看线程的相关信息. 比如: 当前 JVM 有多少线程 从启动到现在已经创建 ......
Thread Dump Java JVM

JVM指令

pop Pop the top operand stack value 弹出 操作数 栈顶的值 astore_<n> Store reference into local variable aload_<n> Load reference from local variable getstatic ......
指令 JVM

JVM内存用量的再学习

JVM内存用量的再学习 背景 最近解决一个SQLServer的问题耗时很久. 最终找到了一个看似合理的问题解释. 但是感觉不能只是总结于数据库方面 因为为了解决这个问题增加了很多监控措施. 所以想就这这个问题, 总结一下这次问题诊断过程中学习到的JVM相关知识. 一个JVM的监控图表 堆区信息 类加 ......
用量 内存 JVM

Day12 jvm 内存模型JMM

1. jvm 内存模型 JMM 原帖链接 JMM控制 Java 线程之间的通信,决定一个线程对共享变量的写入何时对另一个线程可见。 每条线程在自己的工作内存中对共享变量(副本)进行操作,JMM再负责把这些操作同步到主内存中 JVM1.8 用Meta space(元空间)(在JVM外的本地内存中)取代 ......
模型 内存 Day jvm JMM

JVM-垃圾回收器

G1收集器 G1收集器的内存结构完全区别去CMS,弱化了CMS原有的分代模型(分代可以是不连续的空间),将堆内存划分成一个个Region(1MB~32MB, 默认2048个分区),这么做的目的是在进行收集时不必在全堆范围内进行。它主要特点在于达到可控的停顿时间,用户可以指定收集操作在多长时间内完成, ......
垃圾 JVM

JVM-常量池

概要: 1.Java 基本类型的包装类的大部分都实现了常量池技术,即 Byte、Short、Integer、Long、Character、Boolean;2.且数值 [-128,127] 的相应类型的缓存数据,但是超出此范围仍然会去创建新的对象。3.两种浮点数类型的包装类 Float、Double ......
常量 JVM

JVM-垃圾回收

虚拟机栈: 描述的是方法执行时的内存模型,是线程私有的,生命周期与线程相同, 每个方法被执行的同时会创建栈桢(下文会看到),主要保存执行方法时的局部变量表、操作数栈、 动态连接和方法返回地址等信息,方法执行时入栈,方法执行完出栈,出栈就相当于清空了数据, 入栈出栈的时机很明确,所以这块区域不需要进行 ......
垃圾 JVM
共507篇  :2/17页 首页上一页2下一页尾页