知识大全 配置JVM内存分配的妙招
Posted 分配
篇首语:一分耕耘,一分收获。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 配置JVM内存分配的妙招相关的知识,希望对你有一定的参考价值。
配置JVM内存分配的妙招 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
你知道如何配置JVM内存分配吗 这里和大家分享几个妙招 安装Java开发软件时 默认安装包含两个文件夹 一个JDK(Java开发工具箱) 一个JRE(Java运行环境 内含JVM) 其中JDK内另含一个JRE 如果只是运行Java程序 则JRE已足够 而JDK则只有开发人员才用到 一 配置JVM内存 配置JVM内存的参数有四个 XmxJavaHeap最大值 默认值为物理内存的 / 最佳设值应该视物理内存大小及计算机内其他内存开销而定 XmsJavaHeap初始值 Server端JVM最好将 Xms和 Xmx设为相同值 开发测试机JVM可以保留默认值 XmnJavaHeapYoung区大小 不熟悉最好保留默认值 Xss每个线程的Stack大小 不熟悉最好保留默认值 如何配置JVM内存分配 ( )当在命令提示符下启动并使用JVM时(只对当前运行的类Test生效) java Xmx m Xms m Xmn m Xss mTest ( )当在集成开发环境下(如eclipse)启动并使用JVM时 a 在eclipse根目录下打开eclipse ini 默认内容为(这里设置的是运行当前开发工具的JVM内存分配) vmargs Xms m Xmx m vmargs表示以下为虚拟机设置参数 可修改其中的参数值 也可添加 Xmn Xss 另外 eclipse ini内还可以设置非堆内存 如 XX:PermSize= m XX:MaxPermSize= m 此处设置的参数值可以通过以下配置在开发工具的状态栏显示 在eclipse根目录下创建文件options 文件内容为 eclipse ui/perf/showHeapStatus=true 修改eclipse根目录下的eclipse ini文件 在开头处添加如下内容 debugoptions vmjavaw exe重新启动eclipse 就可以看到下方状态条多了JVM信息 b 打开eclipse 窗口 首选项 Java 已安装的JRE(对在当前开发环境中运行的java程序皆生效) 编辑当前使用的JRE 在缺省VM参数中输入 Xmx m Xms m Xmn m Xss m c 打开eclipse 运行 运行 Java应用程序(只对所设置的java类生效) 选定需设置内存分配的类 自变量 在VM自变量中输入 Xmx m Xms m Xmn m Xss m 注 如果在同一开发环境中同时进行了b和c设置 则b设置生效 c设置无效 如 开发环境的设置为 Xmx m 而类Test的设置为 Xmx m Xms m 则运行Test时生效的设置为 Xmx m Xms m ( )当在服务器环境下(如Tomcat)启动并使用JVM时(对当前服务器环境下所以Java程序生效) a 设置环境变量 变量名 CATALINA_OPTS 变量值 Xmx m Xms m Xmn m Xss m b 打开Tomcat根目录下的bin文件夹 编辑catalina bat 将其中的%CATALINA_OPTS%(共有四处)替换为 Xmx m Xms m Xmn m Xss m 二 查看配置JVM内存信息 Runtime getRuntime() maxMemory() //最大可用内存 对应 Xmx Runtime getRuntime() freeMemory() //当前JVM空闲内存 Runtime getRuntime() totalMemory() //当前JVM占用的内存总数 其值相当于当前JVM已使用的内存及freeMemory()的总和 关于maxMemory() freeMemory()和totalMemory() maxMemory()为JVM的最大可用内存 可通过 Xmx设置 默认值为物理内存的 / 设值不能高于计算机物理内存 totalMemory()为当前JVM占用的内存总数 其值相当于当前JVM已使用的内存及freeMemory()的总和 会随着JVM使用内存的增加而增加 freeMemory()为当前JVM空闲内存 因为JVM只有在需要内存时才占用物理内存使用 所以freeMemory()的值一般情况下都很小 而JVM实际可用内存并不等于freeMemory() 而应该等于maxMemory() totalMemory()+freeMemory() 及其配置JVM内存分配 cha138/Article/program/Java/hx/201311/26213相关参考
详解JVM内存结构组成 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 你对JVM内存结构是否了解
深入了解JVM内存结构 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 你对JVM内存结构是否熟悉
MyEclipse内存不足之JVM内存浅谈 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! MyE
JVM内存结构 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! ()类装载子系统 装载连接初始化
深入Java底层:内存屏障与JVM并发详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 内存屏
JVM运行时内存空间结构 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! JVM执行Java程序的
内存管理系统常常被视为实现系统性能最优的一块主要绊脚石因此在过去的几年里Java应用环境对高效执行内存调优的需求急剧增长受此影响JVM供应商开始一哄而上提供配置内存的特殊选项获取最优内存性能——没有中
详解JVM的内存管理机制 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!我们在深入Java核心系列文
深入探索Java工作原理:JVM,内存回收及其他 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
JVM内存模型及垃圾收集策略解析(1) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一JVM内