Menyetel NFS untuk latensi minimum

13

Bagaimana saya bisa mencapai latensi rendah untuk ekspor NFS untuk misalnya membuat pengembang bekerja dengan baik di Eclipse / Visual Studio dengan ruang kerja mereka dipasang di atas NFS?

Robert Munteanu
sumber

Jawaban:

11

Ini terdengar seperti Anda masih dalam tahap desain. Jika itu benar, beberapa hal yang perlu diperhatikan adalah:

  • NFSv3 / 4 lebih dari NFSv2, untuk memungkinkan paket yang lebih besar, dan fitur-fitur seperti "safe asynchronous write"
  • Periksa klien NFS Anda untuk membaca-depan dan menulis tertunda, kedua fitur itu akan membantu
  • Jelas menjaga latensi jaringan rendah - koneksi GBit melalui sakelar cepat
  • Pastikan server NFS Anda disetel untuk kecepatan. Baik itu implementasi NFS, dan bagaimana hal itu dikonfigurasi.

Ada FAQ NFS yang bagus, termasuk beberapa tips tuning, di atas sana: http://nfs.sourceforge.net/

Thorsten
sumber
4
Perlu ditunjukkan bahwa di linux modern, mungkin lebih baik untuk tidak menentukan opsi apa pun karena itu akan melakukan pekerjaan yang lebih baik dalam menggunakan nilai-nilai terbaik daripada yang Anda inginkan.
David Pashley
6

Jangan kompilasi lebih dari NFS. Kinerja NFS biasanya merupakan faktor kinerja I / O disk dan kompilasi adalah apa yang akan mendorong jumlah file I / O Anda.

Jika Anda tidak bisa menghindarinya, caching akan menyelamatkan hari itu. Menjejalkan bahwa server NFS sebagai penuh RAM yang Anda bisa, gunakan menulis asinkron dan mengaktifkan semua caching yang Anda bisa sisi klien. Faktanya adalah bahwa RAID tidak lebih baik dalam menangani operasi disk (non-cache) daripada hard disk tunggal. Dan dengan ukuran file kecil dari beban kerja kompilasi, throughput gabungan tidak akan mengubah apa pun.

Alexandre Carmel-Veilleux
sumber
1

Tunggu caching filesystem, atau jangan lakukan kompilasi melalui NFS. Hard disk selalu akan lebih cepat daripada sistem file jaringan.

David Pashley
sumber
-1

Letakkan file pada disk yang sangat cepat atau array RAID yang dibuat untuk kecepatan karena disk IO akan menentukan batas bawah pada latensi Anda apakah klien lokal atau jarak jauh. Jawaban lainnya juga OK.

Solusi yang bagus adalah membuat file server menjadi build server juga.

Allen
sumber