进击的 Java ,云原生时代的蜕变(4)
发布时间:2019-09-20 16:14 所属栏目:21 来源:易立
导读:在这个方案中,我们一方面将耗时耗能的编译优化过程转移到构建时完成,一方面采用以空间换时间的方法,将预编译的 SCC 缓存保存到 Docker 镜像中。在容器启动时,JVM 可以直接使用内存映射文件来加载 SCC,优化了启
在这个方案中,我们一方面将耗时耗能的编译优化过程转移到构建时完成,一方面采用以空间换时间的方法,将预编译的 SCC 缓存保存到 Docker 镜像中。在容器启动时,JVM 可以直接使用内存映射文件来加载 SCC,优化了启动速度和资源占用。 这个方法另外一个优势是:由于 Docker 镜像采用分层存储,同一个宿主机上的多个 Docker 应用实例会共享同一份 SCC 内存映射,可以大大减少在单机高密度部署时的内存消耗。 下面我们做一下资源消耗的比较,我们首先利用基于 HotSpot VM 的镜像,同时启动 4 个 Docker 应用实例,30s 后利用docker stats查看资源消耗。
然后使用基于 OpenJ9 VM 的镜像,同时启动 4 个 Docker 应用实例,并查看资源消耗。
与 HotSpot VM 相比,OpenJ9 的场景下应用内存占用从平均 600MB 下降到 120MB。惊喜不惊喜? (编辑:ASP站长网) |
相关内容
网友评论
推荐文章
热点阅读