• 2024-07-04JVM专题之G1垃圾收集器上
    JDK8为什么不用CMS做为默认垃圾收集器呢1.CMS单线程或者双线程情况下效率很低2.CMS会并发失败3.CMS可中止的预处理会导致极限5S停顿4.并发失败进入foregroud还会导致进入FullGC,全局MSC整理5.CMS吞吐的设计并不是很优秀G1的目的:GarbageFirst,也就是垃圾优先原则,也就
  • 2024-07-04JVM专题之G1垃圾收集器下
    索引(记录)的源码的工作流程图如下:CSet(CollectionSet回收集合)收集集合(CSet)代表每次GC暂停时回收的一系列目标分区。在任意一次收集暂停中,CSet所有分区都会被释放,内部存活的对象都会被转移到分配的空闲分区中。因此无论是年轻代收集,还是混合收集,工作的机制都是一致的。年轻
  • 2024-07-02JAVA函数式编程
    函数式编程概念,JAVA八新特性Lambda表达式和流(Stream)的使用。一、基本概念命令式编程:是一种描述计算机所需作出的行为的编程典范。主要思想是关注计算机执行的步骤,计算机则会严格遵循指令。  传统的硬件运行的机器码指令就是以命令式分格编写的。也就是对于需要实现的
  • 2024-06-22面试题-Java垃圾回收之垃圾收集器
    1.基础知识(1)知识点补充Stop-the-World:发生时,除了GC所用的线程之外,所有的线程都处于等待状态Safepoint:可达性分析算法时,必须保证在某个快照点进行。分析的过程中对象的引用关系不会发生变化!JVM的运行模式:Java-version就能看到Server模式:启动慢,但是进入稳定期
  • 2024-06-22JVM 垃圾回收
    文章目录1.如何判断对象可回收引用计数法可达性分析算法2.五种引用强软弱虚终虚引用终引用软引用案例软引用_引用队列弱引用对象3.回收算法标记清除算法标记整理复制回收4.分代垃圾回收堆内存大致分为两块:分代垃圾回收怎么工作:GC相关参数分析5.垃圾回收器相关概念:
  • 2024-06-20JVM:不同垃圾收集算法和垃圾收集器 优缺点总结
     如何判断对象是否为垃圾:引用计数法:对象是否被引用,无法解决对象循环引用导致的问题可达性分析:也叫根搜索法 垃圾收集算法1、标记-清除(Mark-Sweep)示意图深蓝色:有引用深灰色:没引用白色:待分配回收前:对整个引用空间不连续的堆对象遍历回收后:引用的对象空间不变,清除:对全
  • 2024-06-17【JVM】G1 垃圾收集器的垃圾收集过程
    G1(GarbageFirst)垃圾收集器是Java虚拟机(JVM)中的一种垃圾收集器,设计目标是提供高吞吐量和低停顿时间的垃圾收集。G1收集器将堆划分为多个大小相等的独立区域(Region),并通过并行和并发的方式进行垃圾回收。G1收集器可以回收年轻代(YoungGeneration)和老年代(OldGeneration)的垃圾
  • 2024-06-17【JVM】CMS 收集器的垃圾收集过程
    CMS(ConcurrentMark-Sweep)收集器是Java虚拟机(JVM)中的一种垃圾收集器,它主要面向老年代(OldGeneration)的垃圾回收。CMS收集器的目标是最小化垃圾收集的停顿时间,从而提高应用程序的响应性。CMS垃圾收集过程主要分为以下几个阶段:初始标记(InitialMarking):这一阶段标记所有直接
  • 2024-06-13JVM
    1.JVM快速入门从面试开始:请谈谈你对JVM的理解?java8的虚拟机有什么更新?什么是OOM?什么是StackOverflowError?有哪些方法分析?JVM的常用参数调优你知道哪些?内存快照抓取和MAT分析DUMP文件知道吗?谈谈JVM中,对类加载器你的认识?​ 位置:JVM是运行在操作系统之上的,它
  • 2024-06-11解读surging 的内存过高的原因
    前言      对于.NET开发人员来讲,一个程序占用内存过高,是极其糟糕,是一款不合格的程序软件,.NET开发人员也不会去使用服务器垃圾收集器(ServerGarbageCollection),而是选用工作站垃圾收集器,而是对于一款低内存的程序更能给开发人员是一款稳定运行的程序,而对于今天写这篇文章
  • 2024-05-29JVM 垃圾收集器分类
    参考官网https://docs.oracle.com/en/java/javase/17/gctuning/introduction-garbage-collection-tuning.html。垃圾收集器可以分为以下四类:1、Serial收集器这个收集器是一个单线程工作的收集器,但它的“单线程”的意义并不仅仅是说
  • 2024-05-28生产成本/物料分类账
    1、理解标准成本和实际生产成本核算原理2、掌握标准成本计算与发布的系统操作3、理解物料分类账的功能实现原理4、掌握生产成本月结和物料分类账月结的操作总目录在SAP中,成本构成可分成两部分:标准成本核算法介绍标准成本—计算举例:1、作业量计划:成本中心生产部1000M
  • 2024-05-25深入理解Java的垃圾回收机制(GC)实现原理
    深入理解Java的垃圾回收机制(GC)实现原理Java的垃圾回收机制(GarbageCollection,GC)是其内存管理的核心功能之一。通过GC,Java自动管理对象的生命周期,回收不再使用的对象所占的内存空间。本文将详细探讨GC的实现原理、不同算法的细节以及其在JVM中的应用。1.垃圾回收的基本
  • 2024-05-23常用JVM虚拟机参数说明
    常用JVM虚拟机参数说明原文地址:https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html非标准选项参数说明-Xcomp强制JVM虚拟机在方法第一次被调用的时候就进行本地编译。-Xint强制JVM运行在解释模式。在该模式下,方法不会被编译为本地代码,所有的字节码
  • 2024-05-15谈谈 JVM 垃圾回收机制
    前言垃圾回收需要思考三件事情,哪些内存需要回收?什么时候回收?如何回收?一、哪些内存需要回收JVM的内存区域中,程序计数器、虚拟机栈和本地方法栈的生命周期是随线程而生,随线程而灭的。这几个区域的内存分配和回收都具有确定性,不需要过多考虑回收问题,当方法或线程结束时,内存自
  • 2024-05-10配置node_exporter
    配置node_exporter配置node_exporter可以通过--web.listen-address和--web.telemetry-path参数来设置端口和路径。例如:node_exporter--web.listen-address=":9600"--web.telemetry-path="/node_metrics"禁用收集器许多收集器默认都是启用的。使用no-前缀来修改状态。例如,
  • 2024-05-03CMS垃圾收集器深入解析
    CMS本身是个非常极端的垃圾收集器,他过于注重停顿时间,而不在乎吞吐量。正常情况使用标记清除算法,所以也会有内存碎片的产生,整个CMS垃圾收集的过程,主要是为了缩短停顿时间,所以在有些环节会与业务线程并发执行。1.初始标记,根据GCRoot的引用链,只标记第一个对象,此时是多个标记线程并
  • 2024-04-30java基础面试
    ThreadLocal:ThreadLocal并不解决线程间共享数据的问题ThreadLocal通过隐式的在不同线程内创建独立实例副本避免了实例线程安全的问题每个线程持有一个Map(ThreadLocalMap)并维护了ThreadLocal对象与具体实例的映射,该Map由于只被持有它的线程访问,故不存在线程安全以及锁的
  • 2024-04-18OpenTelemetry入门看这一篇就够了
    分布式跟踪可以帮助查看整个请求过程中服务之间的交互,并可以让我们深入了解系统中请求的整个生命周期。它帮助我们发现应用程序中的错误、瓶颈和性能问题。OpenTelemetry可以用于从应用程序收集数据。它是一组工具、API和SDK集合,我们可以使用它们来检测、生成、收集和导出遥测
  • 2024-04-14上海携程java高级面试题(一)
    一、JVM加载Class文件的原理机制?在面试java工程师的时候,这道题经常被问到,故需特别注意。Java中的所有类,都需要由类加载器装载到JVM中才能运行。类加载器本身也是一个类,而它的工作就是把class文件从硬盘读取到内存中。在写程序的时候,我们几乎不需要关心类的加载,因为这些都是隐式
  • 2024-04-13[转帖]内存分析之GCViewer详细解读
    文章目录GCViewer详细解读一,Chart详解二,Eventdetail三,Summary四,Pause五,相关概念5.1GC5.1.1FullGC5.1.2MinorGC5.2垃圾收集器5.2.1串行收集器(Serial)5.2.2**ParNew收集器**5.2.3**ParallelScavenge**收集器**5.2.4CMS收集器(ConcurrentMarkSweep)****5.2.5G1
  • 2024-04-10如何查看jvm中的垃圾收集器
    查看jvm中参数:java-XX:+PrintCommandLineFlags-version返回:-XX:G1ConcRefinementThreads=8-XX:GCDrainStackTargetSize=64-XX:InitialHeapSize=524342912-XX:MaxHeapSize=8389486592-XX:+PrintCommandLineFlags-XX:ReservedCodeCacheSize=251658240-XX:+SegmentedCodeC
  • 2024-04-09JVM—垃圾收集器
    JVM—垃圾收集器什么是垃圾没有被引用的对象就是垃圾。怎么找到垃圾引用计数法当对象引用消失,对象就称为垃圾。对象消失一个引用,计数减去一,当引用都消失了,计数就会变为0.此时这个对象就会变成垃圾。在堆内存中主要的引用关系有如下三种:单一引用、循环引用、无引用:引用计
  • 2024-04-08Lua的垃圾回收
    1弱引用表1.1弱引用如果一个对象被引用,那么垃圾回收器不会回收该对象,这就是“强引用”。与“强引用”对应,如果一个对象没有被引用,或者仅被“弱引用”,那么垃圾回收器会忽视弱引用,回收该对象。1.2弱引用表指元素均被“弱引用”的表。我们无法通过变量直接“弱引用”一个对象
  • 2024-04-06牛客面经(2024-04-07)
    美团一面4.2 基本全程八股1.双亲委派,类加载,每种类加载器加载什么?双亲委派:启动类加载器、拓展类、应用程序..打破双亲委派机制类加载过程:加载、链接(验证准备解析)、初始化、使用、卸载 2.spring AOP,bean 基于动态代理实现,jdk代理和cglibjdk代理因为是要继承pr