ใน Linux OS ค่าเฉลี่ยของโหลดจะขึ้นอยู่กับหลายปัจจัย เช่น การใช้งาน CPU จำนวนของกระบวนการสลีปที่ไม่ถูกขัดจังหวะ และอื่นๆ ในทางกลับกัน ค่าเฉลี่ยโหลดของ Solaris OS จะขึ้นอยู่กับจำนวนของกระบวนการที่รันได้และรันได้
ฉันเผชิญกับโหลดเฉลี่ยสูงประมาณ 250 (1 นาที), 230 (5 นาที), 219 (15 นาที) บนเครื่องโลหะเปลือยของ Solaris ที่มีทรัพยากรเป็น
vCPU: 256
แรม: 512GB
ดิสก์: SAN
ในช่วงที่มีการโหลดสูงนี้ ฉันพบว่าเวลาที่ CPU ไม่ทำงาน (87% ที่ไม่ได้ใช้งาน) และ RAM ที่ว่างนั้นอยู่ที่ประมาณ >100GB แสดงให้เห็นอย่างสมบูรณ์ว่าไม่มีคอขวดในทรัพยากรทั้งสองนี้ เนื่องจากกระบวนการสำรองข้อมูลทำงานบนระบบและคำขอการอ่านจำนวนมากจะเกิดขึ้นบนระบบไฟล์ SAN ของฉัน แต่เวลาตอบสนองอยู่ที่ประมาณ 0.25-0.35 มิลลิวินาที ซึ่งน้อยกว่าหรือดีมาก จากยูทิลิตี้ iostat ฉันพบว่าระบบไฟล์เหล่านั้นไม่ว่างประมาณ 40-50% จาก vmstat หลังจากนั้นไม่กี่วินาที มีกระบวนการที่รันได้ประมาณ 40-120 กระบวนการ หมายความว่ากระบวนการเหล่านี้เข้าสู่รันคิว แต่ในวินาทีถัดมา ค่าจะเป็น 0 จากกราฟและสถิติ จะเห็นได้ว่าคำขออ่านทำให้เกิดปัญหานี้
คำถาม:
- กระบวนการที่รันได้เหล่านี้อาจทำให้โหลดเฉลี่ยสูงเช่นนี้หรือไม่ ถ้าเป็นเช่นนั้นได้อย่างไร
- หากเวลาตอบสนองคำขออ่านจาก SAN ดีมากและค่าไม่ว่างของระบบไฟล์คือ 50 เปอร์เซ็นต์ไม่ใช่ 100 เปอร์เซ็นต์ เหตุใดจึงทำให้เกิดการโหลด มันจะเกี่ยวข้องได้อย่างไร
หมายเหตุ: ในกรณีที่มีปัญหาใด ๆ เกี่ยวกับสถานการณ์นี้ โปรดแจ้งให้เราทราบ