大数据怎么入门学习好?
要入门大数据,首先要学会javas
如何设置Docker容器中Java应用的内存限制?
如果使用官方的Java映像或者基于Java映像的Docker映像,那么通过传递JAVA_OPTS环境变量就可以很容易地设置JVM的内存参数。例如,对于正式的tomcat映像,我们可以执行下面的命令来启动一个最大内存为512M的Tomcat实例。
dockerrun-RM-eJAVA_OPTS-xmx512mtomcat:8
在日志中,我们可以清楚地发现设置已经生效"命令行参数:-xmx512m"。
02-Apr-201612:46:26.970INFO【主】服务器v:ApacheTomcat/8.0.32
02-Apr-201612:46:26.974INFO[main]服务器built:2016年2月2日19:34:53UTC
02-Apr-201612:46:26.975INFO【主】服务器numb:8.0.32.0
02-Apr-201612:46:26.975INFO【主】OSNam:Linux
02-Apr-201612:46:26.975信息[主]操作系统V:4.1.19-boot2dock:46:26.975信息【主】Architectur:amd64
02-Apr-201612:46:26.975INFO[main]JavaHom:/usr/lib/JVM/Java-7-op:46:26.976INFO【主】JVMV:1.7.0_95-b00
02-Apr-201612:46:26.976信息【主】JVMV:甲骨文公司
02-Apr-201612:46:26.977信息【主】CATALINA_BAS:/usr/local/Tomcat
02-Apr-201612:46:26.977信息【主】CATALINA_HOM:/usr/local/Tomcat
02-Apr-201612:46:26.978INFO[main]命令行argum:
02-Apr-201612:46:26.978INFO[main]命令行argum:
02-Apr-201612:46:26.978INFO[main]命令行argum:-xmx512m
...
但是,在Docker集群上部署和运行Java容器应用时,仅仅设置JVM的堆参数是不够的,我们还需要限制Docker容器的内存资源:
1.限制容器使用的最大内存量,以防止损坏系统或其他应用程序。
容器可以被调度到一个有足够空闲内存的节点上,从而保证应用程序所需的运行资源。
关于容器的资源分配约束,Docker提供了相应的启动参数。
对于内存,最基本的是通过-m参数限制容器使用的内存大小。
-m,-内存