20篇精品文章+视频,手把手带你攻克OOM难题!|HeapDump性能社区专题精选
Outofmemory (OOM)是一种操作系统或者程序已经无法再申请到内存的状态。经常是因为所有可用的内存,包括磁盘交换空间都已经被分配了。OOM的官方解释是:,根据专属讲师公与的总结,常见的OOM有以下10种(其中OOMKiller是操作系统层面的概念)。开篇推荐的是公与大佬的视频课程《那些年我们遇到的OOM》第一期,在本期课程中,公与重新梳理
Wesley13 Wesley13
3年前
Java虚拟机堆内存(新生代)
Java中的堆是JVM所管理的最大的一块内存空间,主要用于存放各种类的实例对象。在Java中,堆被划分成两个不同的区域:新生代,老年代。新生代又被分为了三个区域:Eden,from survivor,tosurvivor。这样划分的目的是为了使JVM能够更好的管理堆内存中的对象,包括内存分配以及回收。堆的内存模型大致为:从图中可以看出:堆大
Wesley13 Wesley13
3年前
Java 中的堆和栈
Java中的堆和栈简单的说:Java把内存划分成两种:一种是栈内存,一种是堆内存。      在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。      当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的
Stella981 Stella981
3年前
SHELL编程四剑客之Sed工具
SED是一个非交互式文本编辑器,它可对文本文件和标准输入进行编辑,标准输入可以来自键盘输入、文本重定向、字符串、变量,甚至来自于管道的文本。Sed工具在处理文本时默认把当前处理的行存储在临时缓冲区中,称为“模式空间”(patternspace)。如果要将变化写入磁盘、文件需要使用i参数。sed命令语法参数格式:sed参数‘sed内置命令字符‘
Easter79 Easter79
3年前
Spring中的AOP(七)——基于XML配置文件方式的AOP
  除了前面介绍的基于JDK1.5的注解方式来定义切面,切入点和增强处理外,SpringAOP也允许直接使用XML配置文件来管理它们。在JDK1.5之前,只能使用配置文件的方式来管理,在Spring2.X后提供了一个新的aop命名空间来定义切面、切入点和增强处理。相比之下,使用XML配置文件方式有如下优点:如果没有使用JDK1.5以上
Stella981 Stella981
3年前
Linux fork() 系统调用
    在Linux中,当程序调用fork()函数时,系统会创建新的进程,为其分配资源(存储数据和代码的空间),然后把原来进程的所有值都复制到新进程中,只有少量数值与原来的进程值不同,相当于复制了本身。      fork()系统调用,被调用一次,却能返回两次:父进程和子进程各自返回一次。可以通过fork()的返回值的不同来区分父进程和子进程。
Wesley13 Wesley13
3年前
Java多线程并发常用类实例之:Condition
        作为一个示例,假定有一个绑定的缓冲区,它支持 put 和 take 方法。如果试图在空的缓冲区上执行 take 操作,则在某一个项变得可用之前,线程将一直阻塞;如果试图在满的缓冲区上执行 put 操作,则在有空间变得可用之前,线程将一直阻塞。我们喜欢在单独的等待set中保存 put 线程和 take 线程,这样就可
Stella981 Stella981
3年前
PostgreSQL的FSM分析记录
        近来由于工作原因对PG的FSM(FreeSpaceMap,空闲空间映射表)源码进行了学习。下面给大家简单讲述一下。        什么是FSM呢,这不得不说一下PG的存储机制了。PG的更新(更新是删除和插入的结合)和删除都是将元组(数据库对我们插入的每一行数据封装后称为元组)标记为无效,而后通过VACUUM进行物理删除。无效的元组被删
Easter79 Easter79
3年前
ThreadLocal的内存泄露的原因分析以及如何避免
前言在分析ThreadLocal导致的内存泄露前,需要普及了解一下内存泄露、强引用与弱引用以及GC回收机制,这样才能更好的分析为什么ThreadLocal会导致内存泄露呢?更重要的是知道该如何避免这样情况发生,增强系统的健壮性。内存泄露内存泄露为程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果
美味蟹黄堡 美味蟹黄堡
2年前
VPS原理探究
1.VPS的原理 VPS是采用VPS(VirtualPrivateServer)技术,将一部物理服务器分割成多个虚拟专享服务器。分割后形成的VPS虚拟主机都可分配独立公网IP地址、独立操作系统Windows/Linux、独立享用空间、独立内存、独立的CPU资源、独立执行程序和独立系统配置等。用户可自行安装程序,单独重启、关闭服务器。2.VPS虚拟主机的特点