Настройка NFS для минимальной задержки

Как можно добиться низкой задержки при экспорте в NFS, чтобы, например, разработчики хорошо работали в Eclipse/Visual Studio с их рабочими пространствами, смонтированными в NFS?

4 ответа

Решение

Похоже, вы все еще на стадии проектирования. Если это правда, обратите внимание на несколько вещей:

  • NFSv3 / 4 поверх NFSv2, чтобы обеспечить большие пакеты, и такие функции, как "безопасная асинхронная запись"
  • Проверьте ваш NFS-клиент на чтение и отложенную запись, обе эти функции помогут
  • Очевидно, что задержка в сети должна быть низкой - соединения в Гбит через быстрый коммутатор
  • Убедитесь, что ваш NFS-сервер настроен на скорость. Это и реализация NFS, и способ ее настройки.

Есть хороший FAQ по NFS, включая некоторые советы по настройке, здесь: http://nfs.sourceforge.net/

Не компилируйте по NFS. Производительность NFS обычно является фактором производительности дискового ввода-вывода, а компиляция - это то, что увеличит количество операций ввода-вывода файлов.

Если вы не можете избежать этого, кэширование - это то, что спасет день. Создайте на сервере NFS как можно больше оперативной памяти, используйте асинхронные записи и включите все операции кэширования, которые вы можете выполнять на стороне клиента. Дело в том, что RAID-массив не лучше обрабатывает (не кэшированные) дисковые операции, чем один жесткий диск. А с небольшими размерами файлов рабочей нагрузки компиляции объединенная пропускная способность ничего не изменит.

Дождитесь кеширования файловой системы или не выполняйте компиляцию через NFS. Жесткие диски всегда будут быстрее сетевых файловых систем.

Поместите файлы на очень быстрый диск или встроенный RAID-массив, поскольку дисковый ввод-вывод будет определять нижнюю границу задержки, будь то клиент локальный или удаленный. Другие ответы тоже в порядке.

Хорошее решение - сделать файловый сервер также сервером сборки.

Другие вопросы по тегам