ดังนั้นแอป Rails ของคุณจึงใช้ RAM มาก มีอะไรใหม่อีกบ้าง? แต่บางทีนี่อาจไม่ใช่แค่สิ่งที่เป็นอยู่ บางทีรอยเท้าหน่วยความจำของแอปพลิเคชันของคุณอาจถูกขยายโดยอัญมณีที่ป่องอย่างน้อยหนึ่งชิ้น
ฉันเพิ่งเจอโปรเจ็กต์เจ๋งๆ ของ Richard Schneeman เรียกว่าตกรางและเป็นชุดเครื่องมือเปรียบเทียบอัตโนมัติ นี่คือ repo github
สิ่งที่คุณต้องทำคือเพิ่มลงใน gemfile ของคุณดังนี้:
gem 'derailed', group: :development
gem "stackprof", group: :development
จากนั้นคุณจะเห็นว่าเพชรแต่ละเม็ดของคุณต้องใช้หน่วยความจำเท่าใดในเวลารวบรวม:
ใช้คำสั่ง bundle:mem เพื่อดูว่าอัญมณีแต่ละเม็ดใช้ ram เท่าใดในเวลารวบรวม
คุณยังดูได้ด้วยว่าอัญมณีของคุณจัดสรรวัตถุกี่ชิ้นในเวลาโหลด
ใช้บันเดิล:อ็อบเจกต์เพื่อดูข้อมูลเกี่ยวกับการจัดสรรอ็อบเจ็กต์ขณะโหลด
มีแม้กระทั่งเครื่องมือสำหรับวัดการใช้หน่วยความจำในขณะที่แอปพลิเคชันของคุณทำงาน ฉันยังไม่มีโอกาสได้ตรวจสอบสิ่งเหล่านี้เป็นการส่วนตัว เนื่องจากคุณต้องสามารถเรียกใช้แอปในโหมดใช้งานจริงบนคอมพิวเตอร์ที่กำลังพัฒนาได้