4

У нас есть ситуация, когда пользователям разрешено загружать контент, а затем отдельно внести некоторые изменения, а затем отправить форму на основе этих изменений.Как скопировать папку для загрузки с помощью ASP.Net?

Это прекрасно работает в односерверной среде без отказоустойчивости, однако мы хотели бы получить какое-то решение для обмена файлами между серверами, поддерживающими переход на другой ресурс.

Кто-нибудь сталкивался с этим в прошлом? И какие решения вы могли бы разработать? Очевидно, что сохранение базы данных является одним из вариантов, но мы предпочли бы избежать этого.

ответ

1

На прежней работе у нас был кластер веб-серверов с балансиром нагрузки F5 перед ними. У нас была очень похожая проблема в том, что наши приложения позволяли пользователям загружать контент, который может включать в себя фотографии и т. Д. Это устаревшие приложения, и мы не хотели редактировать их, чтобы использовать базу данных, и решение SAN было слишком дорого для нашей ситуации.

В результате мы использовали службу репликации файлов на двух кластерных серверах. Это выполнялось как служба на обеих машинах, используя учетную запись, которая имела сетевой доступ к путям на противоположном сервере. Когда файл был загружен, эта бэкэнд-служба синхронизирует данные в папках файловой системы, делая их доступными для обслуживания с любого веб-сервера.

Два из продуктов, которые мы рассмотрели, были ViceVersa и PeerSync. Я думаю, мы закончили использование PeerSync.


1

В нашем сценарии у нас есть отдельный файловый сервер, на который записываются оба наших сервера приложений для конечного пользователя, так что у вас либо на сервере есть доступ к тем же наборам файлов.

0

Лучшим решением для этого обычно является предоставление общей области в какой-либо форме SAN, которая будет доступна со всех серверов и будет содержать отказ.

Это также имеет то преимущество, что вам не нужно обеспечивать липкую балансировку нагрузки, загрузка может быть обработана одним сервером, а редактирование - другим.

0

Общий SAN с отказоустойчивостью - отличное решение с большой (высокой) стоимостью. Существуют ли подобные решения с отказоустойчивостью по разумной цене? Возможно, что-то вроде DRBD для окон?

Проблема с простой общей файловой системой заключается в отсутствии избыточности (что, если файловый сервер опускается)?

Смежные вопросы