Saya merencanakan infrastruktur penyimpanan bersama baru saya untuk sebuah peternakan server web kecil. Karena itu saya menjalankan banyak tes dengan banyak sistem file NAS. Dengan melakukan itu, saya mendapat beberapa hasil yang tidak terduga dan ingin tahu apakah seseorang di sini dapat mengkonfirmasi hal ini.
Singkatnya: Samba jauh lebih cepat daripada NFS dan GlusterFS untuk menulis file kecil.
Di sini yang saya lakukan: Saya menjalankan "rsync benchmark" sederhana dengan banyak file untuk membandingkan kinerja penulisan untuk file kecil. Untuk reproduksi yang lebih mudah, saya menjalankannya kembali sekarang dengan isi dari wordpress tar.gz.
- GlusterFS mereplikasi 2: 32-35 detik , beban CPU tinggi
- GlusterFS tunggal: 14-16 detik , beban CPU tinggi
- Klien GlusterFS + NFS: 16-19 detik , beban CPU tinggi
- Server kernel NFS + klien NFS (sinkronisasi): 32-36 detik , beban CPU sangat rendah
- NFS kernel server + NFS client (async): 3-4 detik , beban CPU sangat rendah
- Samba: 4-7 detik , beban CPU sedang
- Disk langsung: <1 detik
Saya sama sekali bukan guru samba (saya pikir kontak terakhir saya adalah dengan samba 2.x), jadi saya tidak mengoptimalkan apa pun di sini - hanya konfigurasi out-of-the-box (paket debian / squeeze). Satu-satunya hal yang saya tambahkan "sinkronisasi selalu = ya" yang seharusnya menegakkan sinkronisasi setelah menulis (tetapi melihat hasil itu ..). Tanpa itu, tes di mana sekitar 1-2 detik lebih cepat.
Semua tes di mana dijalankan pada mesin yang sama (self-mount itu NAS ekspor), jadi tidak ada penundaan jaringan - kinerja protokol murni.
Node samping: Sebagai sistem file, saya menggunakan ext4 dan xfs. Hasil di atas dengan ext4. xfs tampil hingga 40% (lebih sedikit waktu) lebih baik. Mesin-mesin adalah contoh kecil EC2. Ekspor NAS menggunakan volume EBS, sumber (tar terekstraksi) pada disk ephemeral.
Jadi begini: Adakah yang bisa menjelaskan mengapa samba jauh lebih cepat?
Juga: Apakah kinerja NFS dengan server kernel dianggap mengerikan (dikalahkan oleh server GlusterFS NFS) dalam mode sinkronisasi? Adakah yang tahu cara menyetel ini?
Terima kasih, L