首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JVM分配的方式太多了吗?

JVM分配的方式太多了吗?
EN

Stack Overflow用户
提问于 2013-12-09 16:11:10
回答 1查看 107关注 0票数 0

我的java堆的分配速度约为123 MB。我需要这个少一点。我有1GB的限制,运行的两个程序都是服务器。其中一个以953 MB的速度运行。我试图运行的服务器JAR应该只占用10 MB或更少。我如何使ubuntu响应与我在JAR上测试过的其他操作系统相同?我的代码可以在GitHub找到

Java版本: JDK/JRE-7

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-10 18:05:30

当您通过top查看它时,使用*nix的开箱即用的Java看起来有点吓人。java可执行文件通常在VIRT列下显示巨大的数字,比如900m。为什么我的小型Java程序使用内存的900米

实际上,它可能不需要使用90万内存。JVM告诉操作系统“我可能使用这么多内存.做好准备”。但它可能并没有实际使用那么多物理内存--如果它是一个小程序,它永远不会接近它。java没有实际使用的任何物理RAM仍可免费用于系统上的其他进程。

要想更准确地了解java进程正在使用多少物理内存,请看topRES专栏。不过,关于*nix内存管理和剖析Java的全面讨论可能超出了这个答案的范围。我鼓励您尝试搜索这个主题,并根据您找到的材料开发特定的问题。

大多数情况下,使用Java的默认内存设置,Java程序(以及沿着它们运行的其他程序)都会做得很好。有时,您需要限制(或增加) JVM允许分配的最大堆内存量。这是最常用的调优Java内存设置,它通常使用-Xmx命令行参数来设置。您可以阅读更多关于它的这里这里

有时,如果您的Java程序是为您神奇地启动的,例如,作为一个系统服务,或者某个较大脚本的一部分,那么在哪里修改Java的命令行选项可能有点棘手。对Xmx进行谷歌搜索可能会让您开始使用修改该产品的java参数的传统方法。

例如Google搜索:https://www.google.com/search?q=ubuntu%20tomcat%20xmx

提供指向/etc/default/tomcat6方向的链接。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20475201

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档