Я планирую новую инфраструктуру общего хранилища для небольшой фермы веб-серверов. Поэтому я провел много тестов с большим количеством файловых систем NAS. Таким образом я получил несколько неожиданных результатов и хотел бы знать, может ли кто-нибудь подтвердить это.
Вкратце: Samba намного быстрее, чем NFS и GlusterFS для записи небольших файлов.
Вот что я сделал: я запустил простой «тест rsync» с большим количеством файлов, чтобы сравнить производительность записи для небольших файлов. Для облегчения воспроизведения я только что перезапустил его с содержимым текущего tar.gz wordpress.
Я абсолютно не гуру самбы (думаю, мой последний контакт был с samba 2.x), поэтому я ничего здесь не оптимизировал - просто готовая конфигурация (пакет debian / squeeze). Единственное, что я добавил: «sync always = yes», который должен обеспечивать синхронизацию после записи (но видя эти результаты ...). Без него тесты были примерно на 1-2 секунды быстрее.
Все тесты выполняются на одной машине (самонастраивается, это экспорт в NAS), поэтому нет сетевых задержек - чистая производительность протокола.
Боковой узел: в качестве файловой системы я использовал ext4 и xfs. Вышеуказанные результаты относятся к ext4. xfs работает на 40% (меньше времени) лучше. Это машины EC2 m1.small. Экспорт NAS осуществляется на томах EBS, исходники (извлеченный tar) - на временном диске.
Итак, начнем: может ли кто-нибудь объяснить мне, почему самба намного быстрее?
Также: Предполагается ли, что производительность NFS с сервером ядра настолько ужасна (по сравнению с сервером NFS GlusterFS) в режиме синхронизации? Есть идеи, как это настроить?
Спасибо, L
Мы широко используем Samba, и я всегда считал, что она обычно быстрее, чем NFS, почти во всех случаях (и я говорю «почти», потому что я недостаточно сравнил их).
Из того, что я видел после пары захватов пакетов, протокол SMB может быть болтливым, но последняя версия Samba реализует SMB2, который может как выдавать несколько команд с одним пакетом, так и выдавать несколько команд, ожидая ACK от последнего. команда вернуться. Это значительно улучшило его скорость, по крайней мере, по моему опыту, и я знаю, что был шокирован, когда впервые увидел разницу в скорости - Устранение неполадок, связанных со скоростью сети - запрос на возраст