tomcat利用setenv对内存的限制和docker中tomcat内存的优雅配置

说起对tomcat内存的限制,对于一个不熟悉的童鞋来说肯定是先google、百度,国内的文章都比较千篇一律。我来说说我在项目中的配置。

一、最常见的配置修改catalina.sh或catalina.bat

这或许是百度、google搜索到的最多的。下图是开源中国的tomcat配置:

tomcat利用setenv对内存的限制和docker中tomcat内存的优雅配置_第1张图片

当我们打开catalina.sh或catalina.bat瞬间蒙了,几百行不熟悉的脚本,下面我推荐另一种优雅的方式

二、使用setenv.sh火setenv.bat配置tomcat内存

如果你查看过catalina.sh或catalina.bat里面的代码你会发现这段说明

tomcat利用setenv对内存的限制和docker中tomcat内存的优雅配置_第2张图片

我们将开源中国的配置的那两行添加到tomcat/bin目录下,命名为setenv.sh、serenv.bat即可。

tomcat利用setenv对内存的限制和docker中tomcat内存的优雅配置_第3张图片

再也不用蛋疼的看那么多代码了,是不是感觉优雅了很多!

三、在docker中控制tomcat内存大小

首先,docker可以控制容器的内存大小,但是tomcat的内存依然是又必要限制的,避免引起内存泄露。

之前看到有的是在Dockerfile中构建image的时候写死了一个setenv.sh到tomcat的bin目录下,这样的话就限制死了我们的镜像,不够通用。

我们在项目中则是直接以docker env的形式在实例启动的时候限制,这样更加灵活。

tomcat利用setenv对内存的限制和docker中tomcat内存的优雅配置_第4张图片

你可能感兴趣的:(tomcat)