У меня есть сервер FreeNAS 9.3 (HP Microserver N54L) и подключение к нему через NFS из нескольких систем OS X (под управлением OS X Yosemite 10.10.1). У меня всегда была низкая производительность по сети (1Gig Ethernet) и скорость передачи примерно 40 мегабайт в секунду, в то время как локально на файловом сервере скорость записи составляет около 140-150 Мбит / с.
через NFS:
$ dd if=/dev/zero of=test bs=64k count=16k
16384+0 records in
16384+0 records out
1073741824 bytes transferred in 27.447623 secs (39119665 bytes/sec)
локально на FreeNAS:
$ dd if=/dev/zero of=test_local bs=64k count=16k
16384+0 records in
16384+0 records out
1073741824 bytes transferred in 7.575698 secs (141735033 bytes/sec)
Хотите знать, какие варианты я должен использовать для монтирования общих ресурсов NFS для повышения производительности? Единственное, что мне пришло в голову, это изменить протокол на TCP, что увеличит rsize и wsize до 32768.
На async
странице руководства не рекомендуется использовать параметр. Использование параметра асинхронности может повысить производительность, но только с риском потери данных в случае сбоя сервера, поскольку клиент не будет следить за тем, чтобы все данные были сохранены в стабильном хранилище на сервере.
Так что вопрос: кто-нибудь разобрался, как повысить производительность?
Спасибо.
источник