虽然java应用服务器将扩展唯一的JVM以运行几个(微)服务,但对接的Java微服务体系结构将为每个对接的微服务运行JVM。考虑到20+、java微服务和有限数量的主机,JVM在每个主机上消耗的资源量似乎是巨大的。
有没有有效的方法来管理这个问题?是否可以对每个JVM进行调优以限制资源消耗?其目的是限制在java微服务体系结构中使用docker的开销。
发布于 2016-09-08 02:48:39
运行的每个Docker和JVM副本都使用内存。通常,在单个节点上拥有多个JVM将使用共享内存,但对于docker,这不是一个选项。
您可以做的是减少每个JVM的最大堆大小。但是,我会允许每个docker映像至少有1 GB作为开销,外加每个JVM的堆大小。虽然这听起来像是很大的内存,但现在它的成本并不是很高。
假设您为每个JVM分配了2 GB的堆,并为docker+JVM添加了1 GB,那么您看起来需要一个64 GB的服务器来运行20个JVM/dockers。
https://stackoverflow.com/questions/39364466
复制相似问题