ไม่กี่วันที่ผ่านมาฉันสังเกตเห็นว่าดิสก์ I / O รอและกิจกรรมดิสก์ลดลง (ซึ่งยอดเยี่ยม) จากนั้นฉันก็สังเกตเห็นว่าแคชของฉันเต็ม (*) และแยกส่วน จากนั้นฉันล้างแคช หลังจากนั้นเวลาแฝงดิสก์และกิจกรรมดิสก์เพิ่มขึ้นถึงระดับก่อนหน้า (ซึ่งไม่ดี)
IOtop แสดงว่า [jbd2 / sda2-8] และ [flush-8: 00] อยู่ด้านบนของการใช้ดิสก์เสมอ นี่คือ Dell R210, ฮาร์ดแวร์ RAID 1 (H200) ที่มีหน่วยความจำฟรีจำนวนมาก (รวม 16 GB ซึ่งประมาณ 8 GB เป็นบัฟเฟอร์ / แคช)
(*) แคชคือ APC opcode cache สำหรับ PHP ซึ่งจะช่วยลดการเข้าถึงดิสก์สำหรับการประมวลผลสคริปต์ PHP แคชเต็มและแยกส่วนเพราะมันรวมไฟล์จากอินสแตนซ์การพัฒนา เมื่อฉันสังเกตเห็นว่าฉันกรองพวกเขาออก
คำถามคือ: ทำไมดิสก์ I / O เพิ่มขึ้นเมื่อทางทฤษฎีควรลดลง? ด้านล่างนี้คือกราฟบางส่วนจาก munin แคชเต็มจาก 6 กุมภาพันธ์ถึง 8
เปลี่ยนหลังจากฉันแสดงความคิดเห็น apc.mmap_file_mask ตามที่บอกโดย @ cyberx86
และหลังจากนั้นสองสามวันhttps://serverfault.com/a/362152/88934
apc.mmap_file_mask=/tmp/apc.XXXXXX
) คุณอาจเห็น I / O ที่ยกระดับ ลองตั้งค่าapc.mmap_file_mask
ให้ใช้หน่วยความจำที่แบ่งใช้ (เช่น/apc.shm.XXXXXX
) หรือ/dev/zero
(หน่วยความจำ mmapped แบบไม่ระบุชื่อ)