Я установил сервер ubuntu, на котором будет размещен веб-сайт WordPress. Я использую следующие технологии:
Проблема в том, что когда я загружаю медиа-файл wordpress, он сохраняет данные на одном из серверов, и я хочу использовать несколько серверов с балансировщиком нагрузки, насколько я понимаю, мне нужно использовать некоторый обмен между серверами и монтировать его на каждый сервер.
Мой вопрос:
Есть ли способ сделать это с помощью AWS? или мне нужно создать другой сервер только для размещения файлов, которые я загружаю? и какой тип обмена файлами я должен выбрать в качестве системы обмена файлами между серверами EC2?
Наверное, проще использовать S3
для обслуживания медиа-загрузки чем пытаться и синхронизировать удаленный EC2
файловые системы или поделитесь одной файловой системой через что-то вроде NFS
.
Вы не можете подключить один том к нескольким серверам одновременно. Я бы рекомендовал изучить распределенную файловую систему, такую как NFS или GlusterFS, для лучшей производительности. Это позволит вам удаленно монтировать разделы на других серверах. Может быть другая файловая система; это лучшее из моего собственного опыта работы с AWS EC2.
Я бы не рекомендовал использовать S3FS через FUSE, учитывая, что каждый раз, когда файл изменяется, вся файловая система повторно загружается на S3 - это нормально для пары файлов, но становится довольно медленно, когда у вас есть большое количество файлов на файловая система. Я искал другие реализации, но пока не нашел ничего стоящего. Если вы действительно хотите использовать S3 для обслуживания файлов, возможно, у вас есть другой процесс в фоновом режиме, который загружает или синхронизирует файлы в корзину S3 через cURL или S3CMD.