首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >预热的Java Docker镜像与类数据共享

预热的Java Docker镜像与类数据共享
EN

Stack Overflow用户
提问于 2020-03-23 17:59:56
回答 1查看 455关注 0票数 0

我想创建一个在Java Service上运行的docker镜像,使用OpenJ9的类数据共享功能来提高启动性能。我想在使用多阶段docker构建镜像时创建类缓存。我在网上看到一些关于预热docker图像的文章。

https://github.com/barecode/adopt-openj9-spring-boot/blob/master/Dockerfile.openj9.warmed

但是,我无法在这里重新创建它,这是我的Dockerfile

代码语言:javascript
复制
FROM adoptopenjdk/openjdk11-openj9:alpine as base
ADD libs/ /libs
ADD service.jar /service.jar

RUN mkdir /hi
WORKDIR /hi
RUN ls /
RUN java -Xshareclasses:name=mycache -Xshareclasses:cacheDir=/hi -Xshareclasses -jar /usr/share/app/service.jar &
RUN sleep 5
RUN ls -la /hi
FROM adoptopenjdk/openjdk11-openj9:alpine-jre
COPY --from=base libs/ /usr/share/app/libs
COPY --from=base service.jar /usr/share/app/service.jar

RUN /bin/sh -c 'ps aux | grep java | grep service | awk '{print $2}' | xargs kill -1'
#RUN java -Xshareclasses:listAllCaches
ENTRYPOINT ["java","-jar", "-Xshareclasses" , "-Xtune:virtualized", "-XX:+UseContainerSupport", "/usr/share/app/service.jar"]

我的问题是当我跑步的时候

代码语言:javascript
复制
RUN java -Xshareclasses:name=mycache -Xshareclasses:cacheDir=/hi -Xshareclasses -jar /usr/share/app/service.jar &

然后期望缓存文件保存在/hi上,文件就不在那里了。

任何帮助都将不胜感激。谢谢。

EN

回答 1

Stack Overflow用户

发布于 2020-05-28 21:19:43

OpenJ9仅读取提供的最后一个-Xshareclasses选项。这使得在开发/调试时很容易替换命令行中以前的选项,因为在某些环境中,很难修改现有的命令行参数。

将命令更改为:

代码语言:javascript
复制
RUN java -Xshareclasses:name=mycache,cacheDir=/hi -jar /usr/share/app/service.jar &

缓存将在/hi目录中创建。

例如:

代码语言:javascript
复制
# java -Xshareclasses:name=mycache,cacheDir=/hi -version
openjdk version "11.0.4" 2019-07-16
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.4+11)
Eclipse OpenJ9 VM AdoptOpenJDK (build openj9-0.15.1, JRE 11 Linux amd64-64-Bit Compressed References 20190717_286 (JIT enabled, AOT enabled)
OpenJ9   - 0f66c6431
OMR      - ec782f26
JCL      - fa49279450 based on jdk-11.0.4+11)

# ls /hi
C290M11F1A64P_mycache_G37
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60811315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档