`

为什么不能将Tomcat的Full gc禁用掉?

    博客分类:
  • java
 
阅读更多

大多数人都知道通过设置-XX:-+DisableExplicitGC可以禁用掉显示调用的System.gc().

而有心人可以发现Tomcat会每隔一个小时触发一次Full GC,为什么每次那么准时?是因为应用中对象正好一个小时满了么?当然不是.那么可以禁用掉好提高性能么?这个是可以的么?答案是No!千万别!

Why?

想了好多,觉得还是简单来讲吧,所有的堆外内存都只有在Full GC情况下才会释放,而Tomcat线上应用都应该是开启NIO的(大概是应该吧?毕竟NIO性能比较高是吧),而NIO也会产生堆外内存,另外线程的栈信息(使用多线程的情况下)也需要在Full GC来清除,所以因为full gc 导致应用暂停时间较长,而取消掉full gc 是不合理的 

分享到:
评论

相关推荐

    tomcat中间件禁用webdav方法

    tomcat中间件禁用webdav方法 通过本方法,可以完成所有运行于该tomcat之上的java项目均拦截webdav方法。

    tomcat GC 优化配置

    Full GC的触发条件包括但不限于: - Tenured区空间不足 - Perm区空间不足 - 显式调用`System.gc()` - 上次GC后堆各区域分配策略发生动态变化 由于Full GC对系统性能影响较大,因此应尽量减少其发生的频率。 ##...

    关于Tomcat的AJP端口禁用.docx

    1. **修改端口为无效值**:打开`server.xml`配置文件,将AJP Connector的port属性从8009更改为-1,这表示禁用该端口。例如: ```xml ``` 修改后,保存并重启Tomcat服务。 2. **注释掉AJP服务**:同样在`server...

    Tomcat gclog日志分析工具HPjmeter

    对tomcat的gclog日志进行分析,进行可视化展示,可以查看一些配置参数,检查是否软件是否运行正常

    tomcat -full-doc

    本“Tomcat - Full-Doc”压缩包文件提供了关于Tomcat集群部署、设置和优化的详尽文档,旨在帮助开发者和系统管理员更好地理解和管理他们的Tomcat环境。 【Tomcat集群】 在高流量或需要高可用性的场景下,单个...

    tomcat禁用RC4的方法

    禁用RC4(SSL/TLS 受诫礼(BAR-MITZVAH)攻击漏洞(CVE-2015-2808)【原理扫描】) 编缉$CATALINA_HOEM/conf/server.xml配置文件,找到https端口配置处,修改如下: 复制代码 maxThreads="150" SSLEnabled="true" ...

    tomcat7tomcat8tomcat9

    Tomcat是Apache软件基金会下的一个开源项目,是一个广泛使用的Java Servlet容器,特别因为其轻量级、高效能和稳定性而闻名。它实现了Java Servlet和JavaServer Pages(JSP)规范,使得开发者能够用Java语言来编写...

    Linux中将Tomcat添加到守护进程

    此外,由于Tomcat已被添加为系统服务,它将在每次系统启动时自动运行。 在维护和管理Tomcat时,还可以使用以下命令操作Tomcat守护进程: - 启动Tomcat:`/etc/init.d/tomcat start` - 停止Tomcat:`/etc/init.d/...

    如何将TOMCAT注册成系统服务

    #### 为什么需要将TOMCAT注册为系统服务? 将TOMCAT注册为系统服务主要带来以下几点好处: 1. **自动化启动**:当服务器重启后,系统服务会自动启动,无需人工干预,这大大减少了因服务器重启而导致服务不可用的...

    Shell脚本定时监控tomcat,服务挂掉自动重启

    Shell脚本定时监控tomcat,服务挂掉自动重启

    tomcat进程不能完全关闭的处理办法.txt

    tomcat shutdown后,进程还存在linux系统中的解决办法

    tomcat输出输出着就不输出了,什么原因?解决方法是

    Java内存管理中的Full GC可能会导致短暂停顿,如果频繁发生,可能会影响应用性能。检查`jmap`或JVisualVM等工具的内存使用情况,优化`-Xms`和`-Xmx`设置,以避免频繁的GC。 3. **线程池配置**:Tomcat使用线程池来...

    Tomcat6.0.x 包

    【标题】: "Tomcat6.0.x 包" 【描述】: "Tomcat6.0windows安装程序 含有源代码" 这个压缩包文件包含了Apache ...总之,Tomcat 6.0.x是Java Web开发中一个不可或缺的工具,它的源代码也为我们提供了宝贵的教育资源。

    tomcat7,tomcat8,tomcat9

    4. 创建或导入Web项目,将项目部署到Tomcat服务器上。 5. 右键点击服务器实例,选择"Start"启动Tomcat,通过浏览器访问应用。 总的来说,Tomcat7、Tomcat8和Tomcat9代表了Java Web服务器技术的发展历程,它们在兼容...

    tomcat不能启动的原因总结

    本文将根据提供的文件信息,对Tomcat不能启动的各种原因进行详细分析,并给出相应的解决方法。 #### 二、Tomcat不能启动的原因分析与解决策略 ##### 1. 错误地将Struts库放入Tomcat的lib目录 **问题描述**:在...

    将tomcat设置为系统服务

    ### 将Tomcat设置为系统服务 在日常的软件开发与运维工作中,为了方便管理和启动Tomcat服务器,我们经常需要将其设置为系统服务。本文将详细介绍如何将Tomcat配置为Windows系统的服务,并确保其能够自动启动和运行...

    idea tomcat runner插件

    1. **集成Tomcat服务器**:此插件允许开发者在不依赖IDEA旗舰版的情况下,在社区版IDEA中轻松配置和运行Tomcat服务器。只需几步简单的设置,就能实现与旗舰版相似的Tomcat集成体验。 2. **快速部署应用**:通过Idea...

    tomcat禁止PUT等方法

    在本文中,我们将讨论如何禁止 Tomcat 上的 PUT 等方法,以防止未经授权的访问和恶意攻击。 修改 Web.xml 文件 要禁止 Tomcat 上的 PUT 等方法,我们需要修改 Tomcat 目录下的 conf/web.xml 文件。该文件是 Tomcat...

    tomcat5.5tomcat最新客户端

    tomcat最新客户端tomcat最新客户端tomcat最新客户端tomcat最新客户端tomcat最新客户端tomcat最新客户端tomcat最新客户端tomcat最新客户端tomcat最新客户端tomcat最新客户端tomcat最新客户端tomcat最新客户端tomcat...

Global site tag (gtag.js) - Google Analytics