從歷史上看,HotSpot在碼頭集裝箱中運行的記錄錯誤,誤判分配的資源(例如RAM)。但是,事情正在緩慢改善。OpenJ9和碼頭集裝箱?
如何OpenJ9與碼頭工人容器和到什麼程度就知道了容器提供的資源(內存,插槽,螺紋等)的
同樣,有人提到的JavaOne 2017年演示過程中對準OpenJ9可以在不同的OpenJ9虛擬機上緩存jit-compilled類。如果虛擬機被限制在不同的容器(或),如果容器化的JVM共享碼頭容量,這個共享緩存是可能的嗎?
從歷史上看,HotSpot在碼頭集裝箱中運行的記錄錯誤,誤判分配的資源(例如RAM)。但是,事情正在緩慢改善。OpenJ9和碼頭集裝箱?
如何OpenJ9與碼頭工人容器和到什麼程度就知道了容器提供的資源(內存,插槽,螺紋等)的
同樣,有人提到的JavaOne 2017年演示過程中對準OpenJ9可以在不同的OpenJ9虛擬機上緩存jit-compilled類。如果虛擬機被限制在不同的容器(或),如果容器化的JVM共享碼頭容量,這個共享緩存是可能的嗎?
關於共享類緩存(SCC),這兩種情況都是可能的。有關共享泊塢窗卷的示例,請參見here中的「使用類數據共享功能」。當JVM被限制在不同的容器中而沒有共享卷時,建議使用預先構建的SCC構建Docker容器。你的dockerfile看起來像這樣。
FROM adoptopenjdk/openjdk9-openj9:x86_64的高山-JDK-9.181
RUN MKDIR /選擇/ shareclasses & & MKDIR /選擇/應用
COPY japp.jar /選擇/應用
CMD [ 「Java」 的, 「-Xshareclasses:cacheDir = /選擇/ shareclasses」, 「罐子」, 「/opt/app/japp.jar」]
然後,您需要構建並運行映像並提交結果容器,並將其作爲基礎映像。
docker build -t japp:latest . docker run japp docker commit container_id japp