![Могут ли возникнуть проблемы, если несколько серверов используют одно крепление](https://rvso.com/image/668792/%D0%9C%D0%BE%D0%B3%D1%83%D1%82%20%D0%BB%D0%B8%20%D0%B2%D0%BE%D0%B7%D0%BD%D0%B8%D0%BA%D0%BD%D1%83%D1%82%D1%8C%20%D0%BF%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC%D1%8B%2C%20%D0%B5%D1%81%D0%BB%D0%B8%20%D0%BD%D0%B5%D1%81%D0%BA%D0%BE%D0%BB%D1%8C%D0%BA%D0%BE%20%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%BE%D0%B2%20%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D1%83%D1%8E%D1%82%20%D0%BE%D0%B4%D0%BD%D0%BE%20%D0%BA%D1%80%D0%B5%D0%BF%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5.png)
Я использую Amazon Web Servers, где у меня есть файловая система NFS, которую я монтирую на нескольких других серверах. Одно монтирование используется совместно примерно 20 серверами, и основная функция серверов — веб-приложение. Хотя это хорошо на данный момент, не приведет ли решение к таким проблемам, как:
- Условия гонки
- Высокая загрузка ЦП из-за блокировки файлов
- Другие непредвиденные проблемы?
Есть ли другой способ совместного использования файловых систем, к которым имеют доступ несколько серверов?
решение1
1. Состояние гонки
Да, на файлере будут условия гонки. То есть пропускная способность сети, дисковый ввод-вывод и т. д.
2. Высокая загрузка ЦП из-за блокировки файлов.
Если приложение попытается получить доступ к заблокированному файлу другим приложением или блокировкой NFS, возникнет длительное ожидание ввода-вывода.
3. Непредвиденные проблемы.
Основная проблема, перечисленная выше, заключается в том, что приложение с асинхронным вводом-выводом будет испытывать трудности с поддержанием актуальности данных, однако этот тип приложения будет использовать в качестве механизма блокировку файлов.