ผลกระทบด้านประสิทธิภาพของการรันระบบไฟล์ที่แตกต่างกันบนเซิร์ฟเวอร์ Linux เดียว


13

หนังสือ"HBase: คู่มือที่ชัดเจน"ระบุว่า

ไม่แนะนำให้ติดตั้งระบบไฟล์ที่แตกต่างกันบนเซิร์ฟเวอร์เดียว สิ่งนี้อาจมีผลเสียต่อประสิทธิภาพเนื่องจากเคอร์เนลอาจต้องแบ่งแคชบัฟเฟอร์เพื่อสนับสนุนระบบไฟล์ที่แตกต่างกัน มีรายงานว่าในบางระบบปฏิบัติการอาจมีผลกระทบต่อประสิทธิภาพการทำลายล้างสูง

สิ่งนี้นำไปใช้กับ Linux ได้จริงหรือ ฉันไม่เคยเห็นบัฟเฟอร์แคชที่ใหญ่กว่า 300 Mbytes และเซิร์ฟเวอร์ที่ทันสมัยส่วนใหญ่มี RAM กิกะไบต์ดังนั้นการแบ่งบัฟเฟอร์แคชระหว่างระบบไฟล์ที่แตกต่างกันไม่ควรเป็นปัญหา ฉันหายไปอย่างอื่นหรือไม่


1
อาจลองส่งอีเมล / ทวีตผู้เขียน .. ขอข้อมูลของเขา / เธอ!
Dolan Antenucci

คำตอบ:


14

การแยกแคชบัฟเฟอร์เป็นอันตราย แต่ผลที่ได้มีน้อยที่สุด ฉันเดาว่ามันเล็กมากจนไม่สามารถวัดได้

คุณต้องจำไว้ว่าข้อมูลระหว่างจุดเมานต์ที่แตกต่างกันนั้นไม่สามารถแบ่งปันได้เช่นกัน

ในขณะที่ระบบไฟล์ที่แตกต่างกันใช้บัฟเฟอร์การจัดสรรที่แตกต่างกัน แต่มันก็ไม่เหมือนกับการจัดสรรหน่วยความจำเพื่อนั่งและดูสวย ข้อมูลจากslabtopสำหรับระบบที่ใช้ระบบไฟล์ 3 ระบบที่แตกต่างกัน (XFS, ext4, btrfs):

  OBJS ใช้งานได้จริง OBJ SIZE SLABS OBJ / SLAB CACHE SIZE NAME 
 42882 42460 99% 0.70K 1866 23 29856K shmem_inode_cache
 14483 13872 95% 0.90K 855 17 13680K ext4_inode_cache
  4096 4096 100% 0.02K 16 256 64K jbd2_revoke_table_s
  2826 1136 40% 0.94K 167 17 2672K xfs_inode
  1664 1664 100% 0.03K 13 128 52K jbd2_revoke_record_
  1333 886 66% 1.01K 43 31 1376K btrfs_inode_cache
(วัตถุอื่น ๆ อีกมากมาย)

อย่างที่คุณเห็นแคชที่ใหญ่มาก ๆ มีระดับการใช้งานมากกว่า 90% ดังนั้นหากคุณใช้ระบบไฟล์หลายระบบพร้อมกันค่าใช้จ่ายเท่ากับการสูญเสียหน่วยความจำระบบ 5% น้อยกว่าหากคอมพิวเตอร์ไม่ใช่ไฟล์เซิร์ฟเวอร์เฉพาะ


+1 สำหรับแจ้งให้ฉันทราบเกี่ยวกับคำสั่ง slabtop!
สกอตต์

ฉันจะบอกว่าตั้งแต่แคชเหล่านั้นไม่เหมือนกันมันไม่สำคัญเลย (แต่ก็ยังสามารถส่งผลกระทบต่อระบบที่ จำกัด ทรัพยากร)
poige

5

ฉันไม่คิดว่าจะมีผลกระทบด้านลบ ฉันมักจะมี ext3 / ext4 ผสมกับ XFS (และแม้กระทั่ง ZFS) ในการตั้งค่าเซิร์ฟเวอร์เดียวกัน ฉันจะไม่อธิบายประสิทธิภาพของตัวเองว่าเป็นอะไรที่น้อยกว่าที่คาดไว้เนื่องจากฮาร์ดแวร์ที่ฉันใช้อยู่

[root@Lancaster ~]# mount
/dev/cciss/c0d0p2 on / type ext4 (rw)
/dev/cciss/c0d0p7 on /tmp type ext4 (rw,nobarrier)
/dev/cciss/c0d0p3 on /usr type ext4 (rw,nobarrier)
/dev/cciss/c0d0p6 on /var type ext4 (rw,nobarrier)
vol2/images on /images type zfs (rw,xattr)
vol1/ppro on /ppro type zfs (rw,noatime,xattr)
vol3/Lancaster_Test on /srv/Lancaster_Test type zfs (rw,noatime,xattr)

คุณกังวลเกี่ยวกับสถานการณ์เฉพาะหรือไม่? ระบบไฟล์ใดบ้างที่จะเล่น? คุณใช้การกระจายแบบใด

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.