Ajustando o NFS para latência mínima

13

Como obter baixa latência para exportações de NFS para, por exemplo, fazer com que os desenvolvedores funcionem bem no Eclipse / Visual Studio com seus espaços de trabalho montados no NFS?

Robert Munteanu
fonte

Respostas:

11

Parece que você ainda está na fase de design. Se isso for verdade, algumas coisas a serem observadas são:

  • NFSv3 / 4 sobre NFSv2, para permitir pacotes maiores e recursos como "gravação assíncrona segura"
  • Verifique seu cliente NFS para leitura antecipada e gravação atrasada, esses dois recursos ajudarão
  • Obviamente, mantenha a latência da rede baixa - conexões GBit em um switch rápido
  • Verifique se o servidor NFS está ajustado para velocidade. Essa é a implementação do NFS e como ela está configurada.

Há uma boa FAQ do NFS, incluindo algumas dicas de ajuste, além: http://nfs.sourceforge.net/

Thorsten
fonte
4
Vale ressaltar que no linux moderno, provavelmente é melhor não especificar nenhuma opção, pois ele fará um trabalho melhor ao usar os melhores valores do que você deseja.
David Pashley
6

Não compile pelo NFS. O desempenho do NFS geralmente é um fator do desempenho de E / S do disco e a compilação é o que impulsionará seu número de operações de E / S de arquivos.

Se você não pode evitar isso, o armazenamento em cache é o que salvará o dia. Coloque o servidor NFS o mais cheio de RAM possível, use gravações assíncronas e ative todo o cache que puder do lado do cliente. O fato é que um RAID não é melhor para lidar com operações de disco (sem cache) do que um único disco rígido. E com os pequenos tamanhos de arquivo de uma carga de trabalho de compilação, a taxa de transferência combinada não muda nada.

Alexandre Carmel-Veilleux
fonte
1

Aguarde o cache do sistema de arquivos ou não faça compilações pelo NFS. Os discos rígidos sempre serão mais rápidos que os sistemas de arquivos em rede.

David Pashley
fonte
-1

Coloque os arquivos em um disco muito rápido ou em uma matriz RAID incorporada à velocidade, pois a E / S do disco determinará o limite inferior da sua latência, seja o cliente local ou remoto. As outras respostas também estão OK.

Uma boa solução é tornar o servidor de arquivos também um servidor de compilação .

Allen
fonte