У меня есть веб-приложение на основе PHP, которое в настоящее время использует только один веб-сервер, но вскоре будет расширено до другого. В большинстве случаев это довольно просто, но приложение также хранит много файлов в файловой системе. Кажется, что существует множество подходов к совместному использованию файлов между двумя серверами, от очень простого до достаточно сложного.
Это опции, которые мне известны
- Простое сетевое хранилище
- Кластерные файловые системы
- Luster
- GFS / GFS2
- GlusterFS
- Hadoop DFS
- MogileFS
Я хочу, чтобы файл, загруженный через один веб-сервер, был немедленно доступен, если доступ через другой. Данные чрезвычайно важны и абсолютно не могут быть потеряны, поэтому все, что реализовано, должно: а) никогда не терять данные и б) обладать очень высокой доступностью (такой же или лучшей, чем локальная файловая система).
Похоже, что кластерные файловые системы также обеспечат более быстрый доступ к данным, чем локальное хранилище (для больших файлов), но на данный момент это не имеет жизненно важного значения.
Что бы вы порекомендовали? Есть ли у вас какие-либо предложения, чтобы добавить или что-то конкретно, чтобы посмотреть с вышеупомянутыми опциями? Любые предложения о том, как управлять резервным копированием данных в кластерных файловых системах?