Одной из задач, поставленной при разработке файловой системы, было достижение производительности, сравнимое с локальными системами.
Существуют несколько методик тестирования, пытающихся имитировать обычную загрузку файловой системы NFS, наиболее популярными из них стали LADDIS [40] и nhfsstone [18]. В этом разделе главы описываются важнейшие проблемы, связанные с производительностью работы NFS, а также меры по их устранению.
Также может иметь смысл заглянуть на сайт ecovod.ru, ведь именно там можно узнать много нового на тему http://ecovod.ru/. Тема эковод может показаться на первый взгляд незначительной и даже не тематичной. Но стоит посетить сайт ecovod.ru, и тема эковод начинает проявлять себя с неожиданной стороны и вызывает всё больший интерес. Дело в том, что тема эковод очень подробно представлена на сайте ecovod.ru. Трудно найти более детальное освещение темы эковод чем это сделано на сайте ecovod.ru. Спасибо сайту ecovod.ru за такое доскональное преподнесение темы эковод.
Узкие места
Серверы NFS обычно представляют собой мощные машины с кэшами большого объема и быстрыми дисками, что компенсирует время, затраченное на отправку и получение запросов RPC. Однако в системе NFS существуют некоторые участки, напрямую приводящие к ухудшению производительности.
Являясь протоколом, не запоминающим состояния, NFS требует записи всех данных до отправки ответного сообщения. Эта информация включает не только изменения метаданных файла (индексных дескрипторов и блоков косвенной адресации), но также и содержимого самого файла. В итоге любой запрос NFS, производящий произвольные изменения в файловой системе (например, WRITE, SETATTR или CREATE), работает очень медленно.
Отправка атрибутов файла требует одного вызова RPC на каждый файл. В результате такие команды, как Is -I применительно к каталогу, приводят к большому количеству запросов RPC. В случае локальной файловой системы такая операция выполняется очень быстро, так как индексные дескрипторы хранятся в кэше, поэтому вызовам stat достаточно ссылки в памяти.
Если сервер недостаточно скоро произведет ответ на запрос, клиент пошлет его заново, считая, что произошел отказ сервера или запрос был утерян в сети. Обработка повторного сообщения также увеличивает загрузку сервера и может привести к возникновению проблем. Возникает каскадный эффект, влекущий в результате то, что сервер «падает» под натиском входящего трафика.
Рассмотрим некоторые способы решения проблем производительности работы NFS. Кэширование на стороне клиента
Если каждая операция над удаленным файлом будет требовать доступа к нему по сети, производительность NFS окажется очень низкой. Именно поэтому большинство клиентов NFS кэшируют блоки и атрибуты файлов. Блоки кэшируются в буферном кэше, а файловые атрибуты — в объектах mode. Эта операция несет в себе определенную опасность, так как клиент не знает, является ли содержимое его кэша действительным, когда просто обращается к серверу при каждом его использовании.
Опубликовал katy
July 12 2015 06:57:43 ·
0 Комментариев ·
2839 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.