成为Java GC专家(4)―Apache的MaxClients参数详解及其在Tomcat执行FullGC时的影响 - ImportNew
在第一篇文章 成为JavaGC专家Part I ― 深入浅出Java垃圾回收机制 中我们学习了不同GC算法的执行过程,GC如何工作,新生代及老年代的基本概念,在JDK7中你应该了解的5种GC类型以及他们的性能如何。
在第二篇文章 成为JavaGC专家Part II ― 如何监控Java垃圾回收机制 中我们学到了JVM到底是如何执行垃圾回收,我们如何监控GC,以及那些工具可以使得监控过程更高效。
在第三篇文章 成为Java GC专家系列Part III�C如何优化Java垃圾回收机制中我们通过实际的例子学到了一些可以优化GC的参数。同时我们讲解了如何减少对象被转移到老年代空间,如何缩短Full GC时间,以及如何设置GC类型及内存空间。
在第四篇文章中,我们将阐述Apache中MaxClients
参数的重要性,以及他如何在GC发生时,显著地影响整个系统的性能。我将提供几个例子以方便你理解MaxClients
导致的问题。同时我还会说明如何根据系统的内存情况,设置最佳的MaxClients
参数值。
MaxClients对于系统的影响
NHN (译者注:NHN是作者工作的公司)服务的执行环境中存在一组Throttle valve-type参数(译者注:节流阀参数,用于控制系统负载)。这些参数对于系统来说十分重要。下面我们看一下Apache的 MaxClients
参数在Full GC 发生时是如何影响系统的。
大部分开发人员都知道在由于GC发生而导致的"停止世界现象(STW) "(详细请参见Understanding Java Garbage Collection)。尤其是,NHN的Java开发人员经常会遇到由于GC原因导致的Tomcat报错。由于Java 虚拟机 (JVM)管理着内存,以Java为基础的程序无法摆脱GC导致的STW现象。假如在某一个时间,当你正在操作你开发的应用时,GC开始执行。即使TTS错误没有发生,你的服务也会给客户展现未预期的503错误。
Read full article from 成为Java GC专家(4)―Apache的MaxClients参数详解及其在Tomcat执行FullGC时的影响 - ImportNew
No comments:
Post a Comment