хранилище для загруженных изображений на веб-ферме

Я работаю над приложением mvc.net. Клиент собирается перенести производство в кластерную среду. Проблема в том, что я храню изображения в локальной файловой системе. Изображения могут динамически загружаться пользователями через интерфейс веб-сайта. Как я могу изменить приложение, чтобы сохранить изображения в рабочем состоянии?

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


person Egor4eg    schedule 28.09.2010    source источник


Ответы (2)


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

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

person eglasius    schedule 28.09.2010
comment
Да, это хорошая идея. Но здесь есть один минус — обслуживание отдельного веб-сервера. - person Egor4eg; 29.09.2010
comment
И у меня к вам вопрос: как лучше записывать файлы на этот сервер: просто записывать их прямо в общую папку на этом сервере или создавать метод веб-сервиса, который требует файл и путь к нему? - person Egor4eg; 29.09.2010
comment
это вопрос того, насколько слабо связанным вы хотите ваше окружение. На данный момент я бы просто использовал общий сетевой ресурс и только при необходимости переходил к веб-службе, т. Е. Если вам нужно поместить более 1 места, запустить любую предварительную обработку изображений / видео и т. д. Это сильно зависит в вашей конкретной среде и где вы хотите разместить нагрузку / даже очереди обработки будут использоваться, если нагрузка будет чрезвычайно высокой. - person eglasius; 29.09.2010

Рассмотрите возможность использования CDN, такой как Amazon S3.

person Chris Martin    schedule 28.09.2010
comment
Клиент хочет избежать сторонних услуг - person Egor4eg; 28.09.2010