![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
8种java.lang.OutOfMemoryError
东风微鸣
三人行, 必有我师焉
展开
-
6. Out of swap space?
6.1 Out of swap space? 概述在启动时, Java应用会分配有限的内存. 这个限制是通过-Xmx和其他类似的启动参数指定. 在这种场景: JVM申请的总内存大于可用的物理内存, 操作系统开始把这些内存从内存swap out到硬盘(分配到swap区).java.lang.OutOfMemoryError: Out of swap space?错误意味着swap区也耗尽...翻译 2018-05-03 14:31:54 · 695 阅读 · 0 评论 -
5. Unable to create new native thread
5.1 Unable to create new native threadJava应用一般是多线程的. 这意味着在用Java写的程序(似乎)可以在同时做多件事情. 例如 – 即使机器只有一个处理器 – 当你把内容从一个窗口拖动到另一个, 在后台播放的电影不会停止因为您一次执行了几个操作.思考线程的一种方法是将它们视为可供提交任务的工作人员. 如果你只有一名员工, 他/她只能同时做一个任务...翻译 2018-05-03 14:31:00 · 8687 阅读 · 0 评论 -
4. Metaspace
4.1 java.lang.OutOfMemoryError: Metaspace 概述Java应用只允许使用有限的内存. 你的应用可以用的准确的内存大小在启动的时候指定. 展开来说, Java内存被分成不同的区域, 具体如下图:所有的这些区域, 包括元空间(metaspace)区域, 可以在JVM启动的时候指定. 如果你没有指定这些的大小, 平台相关的默认配置会被应用.java....翻译 2018-05-03 14:29:49 · 206 阅读 · 0 评论 -
案例3: 某财险公司运行时的Perm区内存溢出分析
文档属性此文档由东风微鸣编写。 未经许可,不得向个人或机构传阅或复制修改记录 日期 作者 版本 修改记录 2017/4/12 东风微鸣 V1.0 创建文档 2017/4/12 东风微鸣 V1.1 细节完善 审阅记录 审阅...原创 2018-05-03 14:28:39 · 433 阅读 · 0 评论 -
3. Permgen space
3.1 Permgen space 概述Java应用只允许使用有限的内存. 你的应用的内存大小是在启动的时候指定好的. 进一步来说, Java内存被分成2个不同的区域, 如下图:这些区域, 包括perm区, 会在JVM启动时设置. 如果你没有设置, 会使用与平台有关的默认配置.java.lang.OutOfMemoryError: PermGen Space 消息表示永久代(Per...翻译 2018-05-03 14:26:58 · 549 阅读 · 0 评论 -
案例2: 某寿险公司核心系统GC开销超限问题分析
文档属性此文档由东风微鸣编写。 未经许可,不得向个人或机构传阅或复制修改记录 日期 作者 版本 修改记录 2016/5/9 东风微鸣 V1.0 创建文档 2017/10/30 东风微鸣 V1.1 格式调整 审阅记录 审阅...原创 2018-05-03 14:25:24 · 426 阅读 · 0 评论 -
2. GC overhead limit exceeded
2.1 GC overhead limit exceeded 概述Java运行时环境包含一个内建的垃圾收集线程. 在很多其他编程语言中, 开发者需要手动分配和释放内存区域, 以保证释放的内存可以被复用.但是Java应用只需要分配内存. 只要一个特定的内存空间不再使用, 一个单独的叫做垃圾收集的县城会清理内存. GC如何检测特定内存不再使用的内容超出本文范围, 但是你可以信任GC可以把这个活...翻译 2018-05-03 14:23:30 · 1759 阅读 · 0 评论 -
案例1: Dynatrace分析某财险承保系统内存泄漏问题
文档属性此文档由东风微鸣编写。 未经许可,不得向个人或机构传阅或复制修改记录 日期 作者 版本 修改记录 2017/3/10 东风微鸣 V1.0 创建文档 2017/10/29 东风微鸣 V1.1 格式调整 审阅记录 审...原创 2018-05-03 14:21:37 · 570 阅读 · 0 评论 -
1. Java heap space
1.1 java.lang.OutOfMemoryError: Java heap space 概述Java 应用只允许使用有限的内存。这个限制是在应用启动的时候指定的。展开来说, Java内存分成2个不同的区域。这两个区域叫做Heap Space (堆内存)和 Permgen (Permanent Generation,即永久代)。这两个区的大小是在JVM启动的时候设置, 可以通过...翻译 2018-05-03 14:17:47 · 2206 阅读 · 0 评论 -
7. Requested array size exceeds VM limit
7.1 Requested array size exceeds VM limit 概述Java对你的应用可以分配的最大数组大小有限制. 准确的限制与平台有关, 但是通常都位于10到21亿元素之间.当你面临java.lang.OutOfMemoryError: Requested array size exceeds VM limit, 意味着应用因为尝试分配一个大于JVM可以支持的数...翻译 2018-05-03 14:33:04 · 13535 阅读 · 1 评论