ฉันกำลังพยายามเรียกใช้เว็บเซิร์ฟเวอร์ Jetty บน kubernetes ซึ่งต้องการฮีปจำนวนมาก ~ 250 GB ในสภาพแวดล้อมการผลิตของเรา ~ 50 GB ในสภาพแวดล้อมการทดสอบของเรา
ฉันกำลังใช้ ท่าเทียบเรือ:9.4-jdk11
ฉันพยายามหลีกเลี่ยงการตั้งค่า Xms
หรือ Xmx
ตั้งค่าสถานะอย่างชัดเจนเนื่องจากค่าแตกต่างกันระหว่างสภาพแวดล้อมที่แตกต่างกัน ซึ่งฉันคิดว่าขึ้นอยู่กับ -XX:MaxRAMPercentage -XX:Initial RAMPercentage
จะดีกว่ามาก แต่ไม่ว่าฉันพยายามอย่างไรก็ไม่สามารถรับได้ MaxHeapSize
เพื่อให้ได้เกิน 32178700288 ~ 30 GB
โหนดที่มีเฉพาะแอป Java ที่มีซิดคาร์เล็กๆ สองสามตัว มีหน่วยความจำ 64 GB
ไฟล์นักเทียบท่า
จากท่าเทียบเรือ:9.4-jdk11
ENV APP_WAR root.war
ENV APP_EXPLODED_WAR รูท/
ENV APP_DESTINATION_PATH $JETTY_BASE/webapps/
ENV APP_DESTINATION_WAR $APP_DESTINATION_PATH$APP_WAR
ENV APP_DESTINATION_EXPLODED_WAR $APP_DESTINATION_PATH$APP_EXPLODED_WAR
เพิ่ม . $APP_DESTINATION_EXPLODED_WAR
ENV JAVA_OPTIONS -XX:+PrintFlagsFinal -XX:MaxRAMPercentage=90 -XX:InitialRAMPercentage=90 -XX:-OmitStackTraceInFastThrow -XX:+UseStringDeduplication -Xlog:gc*,stringdedup*=debug:file=/tmp/gc.log:time
การตั้งค่าทรัพยากรคอนเทนเนอร์
ทรัพยากร:
ขีด จำกัด :
ซีพียู: "8"
หน่วยความจำ: 60G
คำขอ:
ซีพียู: "6"
หน่วยความจำ: 60G
จากค่าเหล่านี้ ฉันควรได้รับ 90% ของ 60 GB MaxHeapSize
~ 54GB ไม่ใช่ 30GB
มีความคิดอะไรที่ฉันขาดหายไป?