该资料很详细的讲述了在Windows环境下Java进程的内存分配问题,包括内核空间和用户空间内存分配,为什么Java堆的实际最大内存分配为1.5G,为什么需要同时配置xms和xmx以及如何扩大用户空间等。 1. How is the space in a basic Win32 process allocated ? The 32-bit Windows secret ! Structure of a standard Win32 process 2. What are the Win32 j
RDS(网易云关系数据库服务)上线已经有一段时间,陆续不断有产品迁入到了RDS中,在线上运维的过程中,也遇到了一些曾经没有考虑到,或者考虑的不全的东西。后续有时间可以分享给大家。
今天想提到的是线上一个4G的RDS实例,发生了OOM(out of memory)的问题,MySQL进程被直接Kill掉了。在解释这个问题的时候,我们首先需要从Linux系统内存分配策略讲起。
一般写C语言程序,我们习惯使用malloc动态的申请内存空间(Java由JVM负责内存管理),malloc函数会向操作