Я довольно занят с программированием на ASP.NET, и я немного запутался в проблеме, с которой я сейчас сталкиваюсь.
Мы, как разработчики в моей компании, живем в кластерной среде, подобной показанной на рисунке
Ничего особенного.
Видите ли, сайты IIS дублируются на всех серверах FrontEnd. Бизнес-логика находится на BackEnds, которые находятся вместе с БД и файловой системой NAS, за брандмауэром.
Таким образом, связь между публичным пространством и защищенным разрешается только через определенные каналы, с конкретными запросами, к определенным IP-адресам и протоколам.
Теперь нас попросили создать сайт, на котором пользователь может настраивать свою собственную среду, загружать изображения , которые будут отображаться на его домашней странице , и другие функции.
В классической конфигурации пользователь загружает изображение, которое написано в папке в корне сайта, и затем HTML обращается к этому изображению, чтобы заполнить любой элемент управления для его отображения.
Но когда пользователь подключается к нашему сайту, балансировщик нагрузки выберет один конкретный интерфейс, который не будет одинаковым для каждого сеанса.
Таким образом, пользователь загружает свой файл, отключается, а затем возвращается только для того, чтобы обнаружить, что его изображение пропало, поскольку балансировщик нагрузки направил свой запрос в другой интерфейс, где изображение не существует.
Так что нужно написать кусок кода, который вытягивает файл из NAS за Firewall.
Часть загрузки глупа, и я могу это понять.
Моя проблема:
когда пользователь подключается к своей странице, как я могу ссылаться в HTML на изображение, которое находится не на компьютере, на котором работает сайт, а в полностью скрытой файловой системе?
Я подумал о написании WCF, который обслуживает изображение как поток байтов, но какой элемент управления ASP.NET использовать на странице для добавления содержимого потока, и Как?
Я знаю, что опрос сообщества экспертов даст мне лучший способ сделать это.
Надеюсь, это достаточно ясно.
Большое спасибо за повторы и извините за плохую английскую форму.