หน่วยความจำที่มองไม่เห็นรั่วไหลบน Linux - เซิร์ฟเวอร์ Ubuntu (ไม่ใช่ดิสก์แคช / บัฟเฟอร์!)
สรุปสิงหาคม 2015 โปรดทราบว่าสิ่งนี้ยังคงเกิดขึ้น สิ่งนี้ไม่เกี่ยวข้องกับ linuxatemyram.com - หน่วยความจำไม่ได้ใช้สำหรับดิสก์แคช / บัฟเฟอร์ นี่คือสิ่งที่ดูเหมือนใน NewRelic - ระบบรั่วหน่วยความจำทั้งหมดใช้พื้นที่สว็อปทั้งหมดแล้วเกิดปัญหา ในภาพหน้าจอนี้ฉันรีบูตเซิร์ฟเวอร์ก่อนที่จะเกิดข้อผิดพลาด: ไม่สามารถระบุแหล่งที่มาของการรั่วไหลได้โดยใช้เครื่องมือ userspace ทั่วไป ขณะนี้มีห้องสนทนาเพื่อหารือเกี่ยวกับปัญหานี้: http://chat.stackexchange.com/rooms/27309/invisible-memory-leak-on-linux วิธีเดียวในการกู้คืนหน่วยความจำ "หายไป" ปรากฏว่ากำลังรีบูตเซิร์ฟเวอร์ นี่เป็นปัญหาที่เกิดขึ้นมายาวนานใน Ubuntu Server 14.04, 14.10 และ 15.04 ด้านบน การใช้หน่วยความจำไม่ได้แสดงอยู่ด้านบนและไม่สามารถกู้คืนได้แม้จะฆ่าทุกกระบวนการแล้ว (ยกเว้นสิ่งต่าง ๆ เช่นกระบวนการเคอร์เนลและ ssh) ดูที่ฟิลด์ "แคช Mem", "บัฟเฟอร์" และ "ฟรี" ที่ด้านบนพวกเขาไม่ได้ใช้หน่วยความจำจนสุดหน่วยความจำที่ใช้คือ "หายไป" และไม่สามารถกู้คืนได้โดยไม่ต้องรีบูต ความพยายามในการใช้หน่วยความจำ "ขาดหายไป" ทำให้เซิร์ฟเวอร์สลับช้าการรวบรวมข้อมูลและหยุดการทำงานในที่สุด root@XanBox:~# top -o …