java堆
包括
新生代:eden,survival(from),survival(to)
老年代:
java方法区
Hot Spot JVM里方法区就是永久代
Direct Memory
可以通过 -XX:MaxDirectMemorySize调整大小
用法
Field unsafeField = sun.misc.Unsafe.class.getDeclaredFields()[0];
unsafeField.setAccessible(true);
sun.misc.Unsafe unsafe = (sun.misc.Unsafe) unsafeField.get(null);
unsafe.allocateMemory(1024 * 1024);
线程堆栈
可以通过-Xss调整,内存不足时抛出StackOverFlowError(纵向无法分配,即:无法分配新的栈帧)或OutofMemoryError:unable to create new native thread(横向无法分配,即无法建立新的线程)
socket缓存区
每个socket链接都有Receive和Send两个缓存区,分别占大约37KB和25KB的内存。链接多的话,这块内存占用也比较可观。如果无法分配,则可能会抛出IOException:Too many open files异常。
JNI代码
如果代码中使用JNI调用本地库,本地库使用的内存也不在堆中。
虚拟机和GC
虚拟机本身和GC的代码执行也要消耗一些内存。
分享到:
相关推荐
理解JVM必备书籍,详细讲解JVM内存模型,JVM性能分析和调优,java类文件结构等,带书签,超清晰
112 5.2.5 服务器JVM进程崩溃 / 113 5.3 实战:Eclipse运行速度调优 / 114 5.3.1 调优前的程序运行状态 / 114 5.3.2 升级JDK 1.6的性能变化及兼容问题 / 117 5.3.3 编译时间和类加载时间的优化 / 122 5.3.4 ...
jvm内存问题最佳实践ppt jvm实现机制ppt jvm调优word tomcat详细资料word tomcat源码研究 java类库简介和数据结构类使用ppt 深入java虚拟机pdf书籍 深入理解java虚拟机pdf 数据结构与算法 java语言版pdf 数据结构与...
非常不错的一本书, 值得推荐, 对java的内存管理和理解,以及实践的例子,是一个中高级java程序员的值得参考学习的资料.
资源名称:Java内存管理机制相关资料汇总资源目录:【】java内存回收机制及预防【】java内存管理机制【】java内存管理白皮书【】Java虚拟机内存管理_对象和引用_空指针【】深入理解java虚拟机jvm高级行与最佳实践...
本repository为《深入理解Java虚拟机 - Jvm高级特性与最佳实践(第三版)》阅读笔记,因为第一章主要讲的是Java的发展历史,这里就不做笔记,直接从第2章的"Java内存区域与内存溢出异常"讲起。 第二部分 自动内存...
深入理解java虚拟机:jvm高级特性与最佳实践源码 安卓面试题 Android 面试问题 - 您的 Android 面试备忘单 我们将在我们的 . 由拥有众多 Android 开发人员面试经验和顶级公司面试经验的人员编写和维护。 内容 数据...
本文是我12年在学习《深入理解Java虚拟机:JVM高级特性与最佳实践》时,做的一个 JVM 简单调优实战笔记,版本都有些过时,不过调优思路和过程还是可以分享给大家参考的。 环境基础配置 硬件: Dell E5410, Intel i3...
第五部分探讨了Java实现高效并发的原理,包括JVM内存模型的结构和操作;原子性、可见性和有序性在Java内存模型中的体现;先行发生原则的规则和使用;线程在Java语言中的实现原理;虚拟机实现高效并发所做的一系列锁...
title: 第12章 Java内存模型与线程 12.1 概述- 7 深入理解Java虛拟机:JVM高级特性与最佳实践(第3版)- 5第五部分 高效并发- 第1
《深入分析Java Web技术内幕(修订版)》新增了淘 宝在无线端的应用实践,包括:CDN 动态加速、多终端化改造、 多终端Session 统一 ,以及在大流量的情况下,如何跨越性能、网络和一个地区的电力瓶颈等内容,并提供...
本文将和你分享一些 JVM “专业术语”,程序员在对 JVM 做任何的性能和垃圾回收调整之前理解和记住这些“专业术语”是非常重要的。在文章的后还提供一些小技巧,包括一些高性能微调的佳实践。关于 Oracle HotSpot 的...
25_gRPC通信示例与JVM回调钩子 26_gRPC服务器流式调用实现 27_gRPC双向流式数据通信详解 28_gRPC与Gradle流畅整合及问题解决的完整过程与思考 29_Gradle插件问题解决方案与Nodejs环境搭建 30_通过gRPC实现Java与...
57_Reactor模式透彻理解及其在Netty中的应用 58_Reactor模式与Netty之间的关系详解 59_Acceptor与Dispatcher角色分析 60_Netty的自适应缓冲区分配策略与堆外内存创建方式 61_Reactor模式5大角色彻底分析 62_Reactor...
第25讲:gRPC通信示例与JVM回调钩子 第26讲:gRPC服务器流式调用实现 第27讲:gRPC双向流式数据通信详解 第28讲:gRPC与Gradle流畅整合及问题解决的完整过程与思考 第29讲:Gradle插件问题解决方案与Nodejs环境...
深入理解 Java 垃圾回收对于编写高效、可靠的应用程序至关重要。以下资源将帮助您掌握 Java 垃圾回收的核心概念、工作原理以及最佳实践。 Java 垃圾回收是编写高效、稳定应用程序的关键一环。通过以上资源,您将获得...
运行时JVM参数化的实践技巧 深入了解 Java 语法细节 理解系统设计原则和模式 开发可维护应用程序的实践技能 开发错误处理应用程序的实践技能 理解 Java 并行和并发架构 本地化和修复并发问题的实践技能 了解 Java ...
运行时JVM参数化的实践技巧 深入了解 Java 语法细节 理解系统设计原则和模式 开发可维护应用程序的实践技能 开发错误处理应用程序的实践技能 理解 Java 并行和并发架构 本地化和修复并发问题的实践技能 了解 Java ...
Java应用性能的瓶颈点非常多,比如磁盘、内存、网络I/O等系统因素,Java应用代码,JVMGC,数据库,缓存等。笔者根据个人经验,将Java性能优化分为4个层级:应用层、数据库层、框架层、JVM层,如图1所示。图1.Java...
JavaSE核心 异常处理、多线程基础、IO系统、网络编程、Java反射机制、JVM性能调优(JVM内存结构剖析、GC分析及调优、JVM内存参数优化)、Java泛型、JDK新特性 熟练掌握JavaSE核心内容,特别是IO和多线程;...