java not enough memory error.
|
After Update from jre-7_21 to jre-7_45: Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory() failed; error='Cannot allocate memory' (errno=12)
12 posts by 7 authors
|
|
|
Patrick Heppler |
10/28/13
|
|
|
Phil Sweeney |
11/2/13
|
When I went through this exercise late last year, I researched each flag I saw mentioned around the place. Most of them were already set as default in modern JVMs and others were simply misunderstood.
For our high traffic (and now very fast) site, this is all I have for my JVMs:
export CATALINA_OPTS="-Xms768m \
-Xmx768m \
-XX:NewSize=448m \
-XX:MaxNewSize=448m \
-XX:MaxTenuringThreshold=32 \
-XX:MaxPermSize=128m \
-XX:+UseConcMarkSweepGC \
-XX:+CMSClassUnloadingEnabled \
-XX:+ExplicitGCInvokesConcurrentAndUnloadsClasses \
The New size relates to the nature of the site, in that it has much more temporary allocations than permanent. But I did that based on analysis with visualvm and then testing.
Obviously you would choose your memory sizes based on your site profile.
But every single one is there for a demonstrable reason.
Phil
|
|
Igal |
11/2/13
|
I think using a bunch of JVM flags from blogs/google searches is a bad idea, and is potentially why you have run into this problem.
I agree
but having said that I think that you also set some flags that you shouldn't mess with (like MaxNewSize and MaxTenuringThreshold) unless you have a very good reason to do so.
I recommend setting the following flags:
-Xms={minimum-heap-memory-in-mb}m
-Xmx={maximum-heap-memory-in-mb}m
-XX:MaxPermSize={maximum-perm-gen-in-mb}m
-XX:+HeapDumpOnOutOfMemoryError
the memory values should be set according to physical RAM size. MaxPermSize should be 256m if possible (though 128m can be used as minimum), and -Xmx should be between 1024m and 4096m, again, depends on available RAM.
- show quoted text ---
Did you find this reply useful? Help the Railo community and add it to the Railo Server wiki at https://github.com/getrailo/railo/wiki
---
You received this message because you are subscribed to the Google Groups "Railo" group.
To view this discussion on the web visit https://groups.google.com/d/msgid/railo/88afc251-7daa-4ad4-8d1b-bcd7a651ea3b%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
--
Igal Sapir
Railo Core Developer
http://getRailo.org/
|
|
Patrick Heppler |
11/4/13
|
Am Montag, 28. Oktober 2013 12:53:35 UTC+1 schrieb Patrick Heppler:
|
|
Kai Koenig |
11/5/13
|
|
|
Igal |
11/5/13
|
This is where I got this settings from
then I suggest that Bruce update his blog post ;)
- show quoted text ---
Did you find this reply useful? Help the Railo community and add it to the Railo Server wiki at https://github.com/getrailo/railo/wiki
---
You received this message because you are subscribed to the Google Groups "Railo" group.To view this discussion on the web visit https://groups.google.com/d/msgid/railo/585C7698-F6A1-4422-9DA1-D26019A8AE9D%40gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.
--
Igal Sapir
Railo Core Developer
http://getRailo.org/
|
|
Patrick Heppler |
11/11/13
|
Am Montag, 4. November 2013 20:40:06 UTC+1 schrieb Igal:
|
|
Chris Blackwell |
11/11/13
|
- show quoted text -To view this discussion on the web visit https://groups.google.com/d/msgid/railo/39c735b9-e2ee-4486-8647-ee7f25621066%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
|
|
Jordan Michaels |
11/12/13
|
https://github.com/utdream/CFML-Installers/issues/57
Warm Regards,
Jordan Michaels
> Patrick (and Bruce)
>
> Do not use JAVA_OPTS to pass arguments to tomcat, use CATALINA_OPTS
>
> for an explanation of why, see ->
> http://www.wellho.net/mouth/2163_CATALINA-OPTS-v-JAVA-OPTS-What-is-the-difference-.html
>
> basically, if you set -Xms1024m in JAVA_OPTS the java process that is
> spawned to restart tomcat also uses that amount of memory, so only use
> global options in JAVA_OPTS, not per process stuff which for tomcat
> should be placed in CATALINA_OPTS.
>
> Chris
>
>
> On 11 November 2013 12:05, Patrick Heppler <slash...@googlemail.com
>
> I now switched back from custom jetty setup to railo/tomcat
> (installer bundle) because I had an issue with javaagent.
>
> I now have this Java Opts:
> JAVA_OPTS="-server -Djava.io.tmpdir=/dev/shm
> -javaagent:/usr/share/nginx/html/example.com/WEB-INF/lib/railo-inst.jar
> <http://example.com/WEB-INF/lib/railo-inst.jar>
> -XX:MaxPermSize=256M -XX:+HeapDumpOnOutOfMemoryError
> -Djava.security.egd=/dev/urandom -Dfile.encoding=UTF-8
> -Duser.language=de -Duser.region=DE -Duser.timezone=Europe/Berlin
> -Dcoldfusion.jsafe.defaultalgo=FIPS186Random";
>
> I still get the memory errors, not on railo start but on restart.
> Linux top command shows more then 1.4 GB free while railo is running.
> Railo Server Admin shows 30% Heap and 20% Non-Heap used.
>
>
> Am Montag, 4. November 2013 20:40:06 UTC+1 schrieb Igal:
>
>> This is where I got this settings from
> then I suggest that Bruce update his blog post ;)
>
>
> On 11/4/2013 11:38 AM, Kai Koenig wrote:
>> That's fine, but be aware and warned that JVM/GC settings are
>> always heavily depending on one's hardware, OS, configuration,
>> application as well as _optimisation goals_.
>>
>> I strongly advise against copying any sort of JVM/GC settings
>> from anyone's blog or tutorial. They might really well work
>> for Bruce's setup but they might (and apparently do) cause
>> issue for you.
>>
>> Cheers
>> Kai
>>
>>> Just FYI
>>> https://www.farbeyondcode.__com/Optimizing-Tomcat-s-JVM-__Options-for-Railo-4-1-5-3001.__html
>>>
>>> This is where I got this settings from. But I'll try the JVM
>>> Settings recommended
>>>
>>> Am Montag, 28. Oktober 2013 12:53:35 UTC+1 schrieb Patrick
>>> Heppler:
>>>
>>> Hi,
>>> I'm running railo 4.1.1.009 on a centos box. Today I
>>> updated JRE (Oracle) from jre-7_21 to jre-7_45. And now
>>> when starting jetty I get:
>>> Starting Jetty: Java HotSpot(TM) 64-Bit Server VM
>>> warning: INFO: os::commit_memory(__0x00000007e0000000,
>>> memory' (errno=12)
>>>
>>> With jre-7_21 I had no issue. Railo is running fine, anyway.
>>>
>>> My Java Args (from a Railo Blog ;) ):
>>> -server -Djava.io.tmpdir=/dev/shm
>>> -javaagent:/opt/jetty/lib/ext/__railo-inst.jar
>>> -XX:PermSize=512M -XX:MaxPermSize=512M -XX:NewSize=512M
>>> -XX:MaxNewSize=512M -XX:GCTimeRatio=5
>>> -XX:ThreadPriorityPolicy=42 -XX:ParallelGCThreads=4
>>> -XX:+UseParNewGC -XX:MaxGCPauseMillis=50
>>> -XX:+DisableExplicitGC -XX:MaxHeapFreeRatio=70
>>> -XX:MinHeapFreeRatio=40 -XX:+UseStringCache
>>> -XX:+OptimizeStringConcat -XX:+UseTLAB
>>> -XX:+ScavengeBeforeFullGC -XX:CompileThreshold=1500
>>> -XX:+TieredCompilation -XX:+UseBiasedLocking
>>> -Xverify:none -XX:+UseThreadPriorities -XX:+UseLargePages
>>> -XX:LargePageSizeInBytes=2m -XX:+UseFastAccessorMethods
>>> -XX:+UseCompressedOops -Djava.security.egd=/dev/__urandom
>>> -Dfile.encoding=UTF-8 -Duser.language=de -Duser.region=DE
>>> -Duser.timezone=Europe/Berlin
>>> -Dcoldfusion.jsafe.__defaultalgo=FIPS186Random
>>
>>
>> --
>> Did you find this reply useful? Help the Railo community and
>> add it to the Railo Server wiki at
>> https://github.com/getrailo/__railo/wiki
>> ---
>> You received this message because you are subscribed to the
>> Google Groups "Railo" group.
>> To view this discussion on the web visit
>> https://groups.google.com/d/__msgid/railo/585C7698-F6A1-__4422-9DA1-D26019A8AE9D%__40gmail.com
>> <https://groups.google.com/d/msgid/railo/585C7698-F6A1-4422-9DA1-D26019A8AE9D%40gmail.com>.
>> For more options, visit
>> https://groups.google.com/__groups/opt_out
>> <https://groups.google.com/groups/opt_out>.
> --
> Igal Sapir
> Railo Core Developer
> http://getRailo.org/
>
> --
> Did you find this reply useful? Help the Railo community and add it
> to the Railo Server wiki at https://github.com/getrailo/railo/wiki
> ---
> You received this message because you are subscribed to the Google
> Groups "Railo" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/railo/39c735b9-e2ee-4486-8647-ee7f25621066%40googlegroups.com.
>
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
> Did you find this reply useful? Help the Railo community and add it to
> the Railo Server wiki at https://github.com/getrailo/railo/wiki
> ---
> You received this message because you are subscribed to the Google
> Groups "Railo" group.
> To view this discussion on the web visit
|
|
Patrick Heppler |
11/12/13
|
Am Montag, 28. Oktober 2013 12:53:35 UTC+1 schrieb Patrick Heppler:
Hi,- show quoted text -
|
|
Bruce Kirkpatrick |
11/12/13
|
java not enough memory error.的更多相关文章
- idea Error: java: OutOfMemoryError: insufficient memory 的处理
idea Error: java: OutOfMemoryError: insufficient memory处理 在更新项目代码或者运行项目时报错 OutOfMemoryError: insuffi ...
- Myeclipse运行报错:an out of memory error has occurred的解决方法
不知道怎么了,重装的myeclipse2013,里边就放了一个项目,启动myeclipse就报 an out of memory error has occurred....... 一点yes就退出 ...
- 解决:编译CM14.1 提示Jack “Out of memory error”错误
Android 7.1编译到33%时出现JDK内存溢出的错误: Out of memory error (version f95d7bdecfceb327f9d201a1348397ed8a84384 ...
- 第一次JVM分析记录:Out of Memory Error (workgroup.cpp:96), pid=6196, tid=139999645685504
tomcat的catalina.out日志报错如下: Exception in thread "http-bio-8081-Acceptor-0" java.lang.OutOfM ...
- elasticsearch报错[WARN ][bootstrap ] Unable to lock JVM Memory: error=12,reason=Cannot allocate memory,解决
早上在服务器上安装elasticsearch集群,在其中的一台上面安装好elasticsearch之后安装了一些插件,其中一个插件是marvel,结果可能是新版本不支持这个插件,就没有安装成功,也就索 ...
- Caused by: java.sql.BatchUpdateException: Transaction error, need to rollback. errno:1205 Lock wait timeout exceeded; try restarting transaction
更新的时候报 Caused by: java.sql.BatchUpdateException: Transaction error, need to rollback. errno:1205 Loc ...
- Java的Exception和Error面试题10问10答
在Java核心知识的面试中,你总能碰到关于 处理Exception和Error的面试题.Exception处理是Java应用开发中一个非常重要的方面,也是编写强健而稳定的Java程序的关键,这自然使它 ...
- Tomcat启动报错:org.apache.catalina.LifecycleException: Failed to start component...java.util.zip.ZipException: error in opening zip file
1.项目环境 IntelliJ IDEA2018.1.6 apache-tomcat-8.0.53 基于springboot开发的项目 maven3.5.3 2.出现问题 从svn同步下项目 启动to ...
- The "Out of socket memory" error
The "Out of socket memory" error I recently did some work on some of our frontend machines ...
随机推荐
- Memcached 拒绝服务漏洞
漏洞名称: Memcached 拒绝服务漏洞 CNNVD编号: CNNVD-201401-176 发布时间: 2014-01-15 更新时间: 2014-01-15 危害等级: 漏洞类型: ...
- ☀【offset() / position()】
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8& ...
- 使用 ASR 和 Azure Pack 为 IaaS 工作负荷提供托受管 DR
Ashish Gangwar 云 + Enterprise项目经理 几周前,我们宣布了在 Azure Site Recovery 中提供一些新功能,这些新功能适用于不同场景,可以让服务提供商在 A ...
- diamond专题(三)—— diamond架构
大家好,这次为大家带来的是diamond的架构,架构如下图所示: 对该图进行一些说明: 1.作为一个配置中心,diamond的功能分为发布和订阅两部分.因为diamond存放的是持久数据,这些数据的变 ...
- 016专家视图测试脚本开发_utility对象
utility对象(1)这个例子是:Extendtest使用Extend对象加载DLL,我们可以使用它来丰富windows api函数,能够编写更为强大和灵活的测试代码 实例代码: '声明FindWi ...
- 曲面Shader
这是一个能让平面呈现出曲面效果的Shaer. 代码: Shader "Custom/CurvedWorld"{ Properties { // Diffuse texture _M ...
- 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程02:关键帧动画导入与切割》
2. 关键帧动画导入与切割 动画的分割与导入概述: 在游戏当中,游戏角色在不同状态下会有不同的动作,这些动作在引擎里相当于一段段的动画片段.当导入模型资源的时候,连同模型动画都会一并导入到引擎中.开发 ...
- HW5.25
public class Solution { public static void main(String[] args) { System.out.println(convertMillis(55 ...
- Linux 下的五种 IO 模型
概念说明 用户空间与内核空间 现在操作系统都是采用虚拟存储器,那么对32位操作系统而言,它的寻址空间(虚拟存储空间)为4G(2的32次方).操作系统的核心是内核,独立于普通的应用程序,可以访问受保护的 ...
- spring的有状态BEAN和无状态BEAN
有状态会话bean :每个用户有自己特有的一个实例,在用户的生存期内,bean保持了用户的信息,即“有状态”:一旦用户灭亡(调用结束或实例结束),bean的生命期也告结束.即每个用户最初都会得到一 ...