这段时间负责的规则引擎,但系统每天java.lang.outofmemory这个错误总是一次次的出现我的面前。对这个问题,我的第一反应也知道run.sh文件有问题,配置的-Xms -Xmm有问题,然后自己看他的配置后,发现他把这两个参数配置run.conf文件中。而自己尝试修改run.conf文件的配置后发现对系统的优化程度无任何帮助。而在run.sh文件的配置的PermSize,maxPermsize不停地被我修改,系统的只是得到短暂的优化,对系统并无任何实际的帮助。
后对系统dump文件进行分析,发现系统本身所需内存已经达到700M多,而设置 JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。Heap size 的大小是Young Generation 和Tenured Generaion 之和。提示:在JVM中如果98%的时间是用于GC且可用的Heap size 不足2%的时候将抛出此异常信息。提示:Heap Size 最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。
从我们的系统的角度来看默认的内存配置是无法达到要求的,而在run.conf 修改文件是无效的,只有在run.sh的java_opt参数做修改后,才对系统有着实际的效果
分享到:
相关推荐
当遇到“JBoss内存溢出”问题时,优化策略的选择变得至关重要,这不仅关乎系统的稳定运行,还直接影响到用户体验和业务连续性。 ### JBoss内存溢出的原因 JBoss内存溢出通常由以下几个方面引起: 1. **对象泄漏**...
### JBoss内存溢出原因分析 #### 一、概述 JBoss是一款开源的应用服务器,它支持多种企业级应用,如EJB(Enterprise JavaBeans)、JMS(Java Messaging Service)、JPA(Java Persistence API)等。在运行过程中,...
在开发Java应用程序时,我们经常会遇到服务器内存溢出(Out Of Memory)的问题,尤其是在使用集成开发环境如MyEclipse启动大型或复杂项目时,搭配应用服务器如JBoss时,这种情况尤为常见。内存溢出通常是由于应用...
- **队列大小** (`MaximumQueueSize`):设置等待执行的任务队列的最大长度,有助于避免任务堆积导致的内存溢出。 这些设置对于保持系统稳定运行至关重要。 ##### 5. JVM启动参数调整 修改`.jboss\bin\run.sh`文件...
在实际操作中,我们需要根据服务器的硬件资源、应用的特性以及预期的并发量来灵活调整这些参数,以确保服务器的高效运行和防止内存溢出(OutOfMemoryError)。内存溢出通常有两类:`PermGen space`(永久代溢出)和`...
- **内存管理**:合理设置JVM参数,如初始堆大小、最大堆大小等,以避免因内存溢出导致的服务中断。 - **线程池配置**:通过调整线程池大小,可以有效提升系统响应速度。 - **监控工具集成**:利用JConsole等工具对...
本文档描述了apache web服务器安装以及常用的编译模式;描述了apache jboss3.2.6做负载均衡(load ...5.关于多工程后,JBOSS会有内存溢出时的解决方案 25 6.Java, jre ,jdk 的安装 25 7.JBOSS服务的启动脚本 26
本文将介绍Tomcat内存溢出的原因、常见情况以及如何调整内存大小以预防和解决内存溢出问题。 ### Tomcat内存设置问题 在使用Java程序从数据库中查询大量数据或是在Web应用服务器(如Tomcat、JBoss、WebLogic等)...
然而,PermGen space的垃圾回收效率较低,因此在高负载应用或大量类加载的情况下,容易出现内存溢出。 解决此问题的方法是调整JVM参数,增加PermGen space的大小。例如,在`run.bat`文件中添加以下参数: ``` -Xms...
OutOfMemoryError: PermGen space异常是由于 PermGen space 内存溢出引起的。解决方法是手动设置MaxPermSize大小。在Tomcat以bat方式启动时,需要修改TOMCAT_HOME/bin/catalina.sh文件,加入以下行:`JAVA_OPTS="-...
5. **Java内存溢出** 遇到`java.lang.OutOfMemoryError`时,需要调整JVM参数。在Run.conf中增加如下设置: ``` JAVA_OPTS="-Xms1536m -Xmx1536m -XX:PermSize=512m -XX:MaxPermSize=512m -Xss256k \ -Dsun.rmi....
Jboss中间件下JVM参数调优配置的知识点主要包括以下几个方面: 1. JVM内存结构优化 JVM内存主要分为堆内存(heap)和非堆内存(nheap)。堆内存主要包括Eden空间、Survivor空间和Tenured空间。Eden空间用于对象的...
此外,它还支持缓存的钝化功能,即当缓存运行时内存溢出,可以将数据转存到磁盘,以及实现缓存数据的预加载,加速系统的启动过程。 2. **驱逐策略**:为了防止服务器内存资源被耗尽,JBoss Cache采用了多种驱逐策略...
3. 数据库连接池优化:配置合适的最大连接数,避免数据库连接溢出。 4. 日志优化:启用日志归并,减少I/O操作,提高性能。 5. 应用代码优化:避免不必要的计算和数据库查询,使用缓存提高响应速度。 五、故障排查与...
- **优化内存使用**:合理设置最大会话数量和超时时间,以避免内存溢出。 - **网络带宽优化**:根据实际情况调整会话复制频率,以减少网络负载。 #### 八、农耕(Farming) - **定义**:农耕是一种将任务分散到...
4. 内存数据网格:集成Infinispan,为应用程序提供了内存中的数据存储和缓存,提升性能。 5. 安全性:提供了基于角色的访问控制(RBAC)、SSL/TLS加密以及与其他安全服务的集成,确保了应用的安全运行。 6. 微服务...
在Java 8之后,永久代被移除,其功能被元空间(Metaspace)取代,以减少内存溢出问题。 当出现PermGen space错误时,通常有以下几种情况: 1. 应用程序加载了大量的类,导致永久代内存不足。 2. 在单个Tomcat实例...
为了验证同步服务器是否存在内存泄漏以及确保服务器不会出现内存溢出错误,我们需要进行压力测试来获取相关数据并分析服务器的内存状况。我们使用JMeter作为压力测试工具,通过监控服务器的内存使用情况(包括操作...
在遇到内存溢出问题时,我们经常使用`jmap -dump`来捕获堆内存快照,以便后续分析。 `jstack`提供了线程堆栈的快照,帮助我们诊断线程死锁或其他线程相关的问题。在Linux环境下,`jstack -l`会提供更详尽的信息。 ...