Jvm
  • 2025-01-09高级java每日一道面试题-2025年01月06日-并发篇- 什么是Daemon线程?它有什么意义?
    如果有遗漏,评论区告诉我进行补充面试官:什么是Daemon线程?它有什么意义?我回答:在Java高级面试中,Daemon线程是一个重要的并发编程概念。以下是对Daemon线程的详细解释及其意义:一、Daemon线程的定义Daemon线程,也称为守护线程,是Java中一种特殊类型的线程。它主要在后台
  • 2025-01-0815. 你知道哪些JVM性能调优参数?
    「堆栈内存相关」-Xms设置初始堆的大小-Xmx设置最大堆的大小-Xmn设置年轻代大小,相当于同时配置-XX:NewSize和-XX:MaxNewSize为一样的值-Xss每个线程的堆栈大小-XX:NewSize设置年轻代大小(for1.3/1.4)-XX:MaxNewSize年轻代最大值(for1.3/1.4)-XX:NewRatio年轻代与
  • 2025-01-0812. 调优命令有哪些?
    SunJDK监控和故障处理命令有jpsjstatjmapjhatjstackjinfojps:JVMProcessStatusTool,显示指定系统内所有的HotSpot虚拟机进程。jstat:JVMstatisticsMonitoring是用于监视虚拟机运行时状态信息的命令,它可以显示出虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数
  • 2025-01-0810. JVM的永久代中会发生垃圾回收么
    JVM的永久代(PermGen)中会发生垃圾回收‌。在Java8之前的版本中,永久代用于存储类的元数据、常量池、静态变量等,当永久代空间不足或超过某个阈值时,会触发完全垃圾回收(FullGC),以回收不再使用的类定义和其他资源,防止内存溢出‌然而,从Java8开始,永久代被元空间(Metaspace)所替代。元空
  • 2025-01-086. 说说Java对象创建过程
    1.JVM遇到一条新建对象的指令时首先去检查这个指令的参数是否能在常量池中定义到一个类的符号引用。然后加载这个类(类加载过程在后边讲)2.为对象分配内存。一种办法“指针碰撞”、一种办法“空闲列表”,最终常用的办法“本地线程缓冲分配(TLAB)”指针碰撞:要求内存空间必须是规则
  • 2025-01-08JVM调优配置
    议基于普通的业务服务进行此项配置:<project、sppp、business等>    -XX:MetaspaceSize=512m-XX:MaxMetaspaceSize=512m-Xms1G-Xmx1G-Xmn256m-Xss1m-XX:SurvivorRatio=8-XX:+UseConcMarkSweepGC   建议基于业务平台微服务进行此项配置:<gateway、auth等> 
  • 2025-01-085. 描述一下JVM加载class文件的原理机制
    JVM中类的装载是由类加载器(ClassLoader)和它的子类来实现的,Java中的类加载器是一个重要的Java运行时系统组件,它负责在运行时查找和装入类文件中的类。由于Java的跨平台性,经过编译的Java源程序并不是一个可执行程序,而是一个或多个类文件。当Java程序需要使用某个类时,JVM会确保
  • 2025-01-07Java基础学习(一)
    Java基础学习(一):入门知识本文为个人学习记录,内容学习自狂神说JavaJava三大版本JavaSE:标准版,主要用于桌面程序和控制台程序开发JavaME:微缩版,主要用于嵌入式开发JavaEE:企业版,主要用于Web端和服务器开发Java相关缩写词JDK:JavaDevelopmentKit,Java开发工具JRE:JavaRu
  • 2025-01-071. 简述一下JVM内存模型
    JVM内存分为线程私有区和线程共享区线程私有区:程序计算器当同时进行的线程数超过CPU数或内核数时,就要通过时间片轮徇分派CPU的时间资源,不免发生线程切换。这时,每个线程就需要一个属于自己的计数器来记录下一条要运行的指令。如果执行的是JAVA方法,计数器记录正在执行的java字
  • 2025-01-06java和集合和JVM
    Java语言有哪些特点?面向对象(封装,继承,多态),平台无关性(Java虚拟机实现平台无关性),可靠性(具备异常处理和自动内存管理机制)。.java文件(java源代码文件)经javac编译器编译成.class文件(字节码文件)JVM类加载器再加载字节码文件,解释器逐行解释执行;OpenJDK开源;Java和C++的区别?
  • 2025-01-06描述一下 JVM 加载 Class 文件的原理机制
    JVM加载Class文件的原理机制涉及多个步骤和组件,主要包括类加载器(ClassLoader)和类加载过程。下面详细描述这些机制:1.类加载器(ClassLoader)类加载器是JVM中负责加载类的组件。JVM提供了三种主要的类加载器:启动类加载器(BootstrapClassLoader):负责加载Java核心库(如
  • 2025-01-05JVM实战—11.OOM的原因和模拟以及案例
    大纲1.线上系统突然由于OOM内存溢出挂掉2.什么是内存溢出及哪些区域会发生内存溢出3.Metaspace如何因类太多而发生内存溢出4.无限制调用方法如何让线程的栈内存溢出5.对象太多导致堆内存实在放不下而内存溢出6.模拟JVMMetaspace内存溢出的场景(动态生成268个类占10M)7.模
  • 2025-01-04Java 大视界 -- Java 大数据图像与视频处理:基于深度学习与大数据框架(九)
           
  • 2025-01-04JVM实战—10.MAT的使用和JVM优化总结
    大纲1.线上大促活动导致的老年代内存泄漏和FGC(MAT分析出本地缓存没处理好)2.百万级数据误处理导致频繁FGC(大数据量加载到内存处理+String.split())3.JVM运行原理和GC原理总结4.JVM性能优化的思路和步骤5.问题汇总 1.线上大促活动导致的老年代内存泄漏和FGC(MAT分析出
  • 2025-01-04深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)PDF、EPUB免费下载
    适读人群:1.使用Java技术体系的中-高级开发人员2.系统调优师3.平台架构师4.准备进互联网大厂面试的Java开发人员周志明JVM新作,新增内容近50%,大厂面试知识点全覆盖。与《Java编程思想、EffectiveJava、Java核心技术》堪称“Java四大名著”电子版仅供预览,下载后24小时内务必删
  • 2025-01-03JVM实战—9.线上FGC的几种案例
    大纲1.如何优化每秒十万QPS的社交APP的JVM性能(增加S区大小+优化内存碎片)2.如何对垂直电商APP后台系统的FGC进行深度优化(定制JVM参数模版)3.不合理设置JVM参数可能导致频繁FGC(优化反射的软引用被每次YGC回收)4.线上系统每天数十次FGC导致频繁卡顿的优化(大对象问题)5.电
  • 2025-01-03一文吃透常用的 JVM 调优命令!
    目录一、常用命令1.1、jps2.2、jstat2.2.1、示例参数:class2.2.2、示例参数:compiler2.2.3、示例参数:gc2.2.4、示例参数:gccapacity2.2.5、示例参数:gcutil2.2.6、示例参数:gccause2.2.7、示例参数:gcnew2.2.8、示例参数:gcnewcapacity2.2.9、示例参数:gcold2.2.10、示
  • 2025-01-02JVM实战—8.如何分析jstat统计来定位GC
    大纲1.使用jstat了解线上系统的JVM运行状况2.使用jmap和jhat了解线上系统的对象分布3.如何分析JVM运行状况并合理优化4.使用jstat分析模拟的BI系统JVM运行情况5.使用jstat分析模拟的计算系统JVM运行情况6.问题汇总 1.使用jstat了解线上系统的JVM运行状况(1)JVM的整体运
  • 2025-01-02JVM内存分析工具
    1.jmap(JavaMemoryMap)功能:jmap是一个命令行工具,用于分析JVM内存分布、生成堆转储文件,以及查看对象和类的内存使用情况。主要命令和选项:查看堆内存概要信息:jmap-heap<pid>显示堆配置(初始大小、最大大小等)。当前堆内存使用量和垃圾回收器信息。查看对象统计信息:
  • 2025-01-01JVM实战—7.如何模拟GC场景并阅读GC日志
    大纲1.动手模拟出频繁YoungGC的场景2.JVM的YoungGC日志应该怎么看3.代码模拟动态年龄判定规则进入老年代4.代码模拟S区放不下部分进入老年代5.JVM的FullGC日志应该怎么看6.问题汇总 1.动手模拟出频繁YoungGC的场景(1)程序的JVM参数示范(2)如何打印出JVMGC日志(3)
  • 2025-01-01Java 大视界 -- Java 大数据机器学习应用:从数据预处理到模型训练与部署(三)
           
  • 2025-01-01JVM实战—7.如何模拟GC场景并阅读GC日志
    大纲1.动手模拟出频繁YoungGC的场景2.JVM的YoungGC日志应该怎么看3.代码模拟动态年龄判定规则进入老年代4.代码模拟S区放不下部分进入老年代5.JVM的FullGC日志应该怎么看6.问题汇总1.动手模拟出频繁YoungGC的场景(1)程序的JVM参数示范(2)如何打印出JVMGC日志(3
  • 2025-01-01Java 虚拟机(JVM)深度剖析:原理、优化与实践探索
    在当今的软件开发领域,Java语言凭借其“一次编写,到处运行”的特性,占据着举足轻重的地位。而Java虚拟机(JavaVirtualMachine,JVM)作为Java程序运行的核心基础设施,负责加载、执行和管理Java字节码,其性能和稳定性直接影响着Java应用的质量和效率。深入研究JVM,对于优化J
  • 2024-12-31Java 大视界 -- Java 微服务架构在大数据应用中的实践:服务拆分与数据交互(一)
           
  • 2024-12-31JVM实战—6.频繁YGC和频繁FGC的后果
    大纲1.JVMGC导致系统突然卡死无法访问2.什么是YoungGC什么是FullGC3.YoungGC、OldGC和FullGC的发生情况4.频繁YGC的案例(G1解决大内存YGC过慢)5.频繁FGC的案例(YGC存活对象S区放不下)6.问题汇总1.JVMGC导致系统突然卡死无法访问(1)基于JVM运行的系统最怕什么(