ขนาดฮีป JVM เป็นอัตราส่วนของ RAM ทางกายภาพของระบบ (Weblogic)


1

ควรตั้งค่าขนาดฮีป JVM สูงสุดเท่าใดสำหรับขนาดฟิสิคัลแรมที่เจาะจง e.g. With 8GB RAM, I can set the MAX heap size for a server app as 3GB.

คำถามนี้เฉพาะกับ Java 1.8 และเซิร์ฟเวอร์ 12c ของ weblogic สมมติว่าเป็นเซิร์ฟเวอร์ linux ที่ไม่มีส่วนหัวที่มีเซิร์ฟเวอร์ weblogic เป็นกระบวนการเซิร์ฟเวอร์หลักที่ทำงานอยู่

เป็นกฎทั่วไปหรือเอกสารแนะนำการทำแผนที่นี้ ตัวอย่างเช่น:

8  GB RAM -- Max JVM Heap size XX GB
16 GB RAM -- Max JVM Heap size XY GB
32 GB RAM -- Max JVM Heap size YY GB

คำตอบ:


1

ไม่มีกฎที่ยากและรวดเร็วในการปรับขนาดฮีปของคุณ - มันขึ้นอยู่กับปริมาณงานและงานอื่น ๆ ที่เซิร์ฟเวอร์ทำและความต้องการ

เวิร์กโหลดบางตัวจะได้รับประโยชน์จากหน่วยความจำที่ว่างมากขึ้น (ดังนั้นระบบปฏิบัติการสามารถใช้เป็นแคชของระบบไฟล์เป็นต้น) ซึ่งเป็นปริมาณงานอื่น ๆ ที่ JVM ต้องการหน่วยความจำมากที่สุดเท่าที่ระบบปฏิบัติการสามารถสำรองไว้ได้

หากไม่มีข้อมูลมากขึ้นเป็นไปไม่ได้ที่จะแนะนำให้คุณทำอย่างอื่นนอกจากแนะนำให้คุณทำการทดสอบ เลือกการกำหนดค่าที่เหมาะสมที่สุดตามการใช้งานจริง / ที่คาดหวังและวัดจากการวัดประสิทธิภาพที่เหมาะสม (เวลาตอบสนองการร้องขอ / วินาทีเป็นต้น) ที่เหมาะสมสำหรับแอปพลิเคชันของคุณ


นี่คือเอกสาร Oracle สำหรับ Java 1.6 ซึ่งระบุขนาดฮีปเป็นเศษส่วนของ RAM Default Heap Size ...The proportion of memory to use for the heap is controlled by the command line options DefaultInitialRAMFraction and DefaultMaxRAMFraction, as shown in the table below. .. maximum heap size MIN(memory / DefaultMaxRAMFraction, 1GB) MIN(memory / 4, 1GB) [ลิงค์] oracle.com/technetwork/java/javase/... ฉันกำลังมองหาการอ้างอิง / แนวทางที่คล้ายกันสำหรับ Heap สูงสุดและต่ำสุดสำหรับ Java 1.8
Mythbuster
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.