Хранение статических файлов для совместного использования ролями Azure - PullRequest
1 голос
/ 13 сентября 2011

Я пытаюсь разместить некоторые статические файлы для доступа через веб-роль ASP.Net и отдельную роль работника данных, которые работают в одном и том же развертывании (они используют глобальный статический интерфейс).

Однако я не уверен, как именно их «разместить», я пытался использовать виртуальные папки через HttpRuntime.AppDomainAppPath, но только иногда работает в режиме отладки.Файлы также, похоже, не упаковываются в пакеты развертывания, созданные VS vis CSPack (хотя это может быть отдельной проблемой, возможно ли это тоже исправить?)

Статические файлы, о которых идет речь, на самом делеWordNet, который я использую через WordNet.Net, если это имеет какое-либо значение.Мне также нужно решение для работы как в облачной среде, так и в эмуляторе (если это возможно).

Ответы [ 2 ]

2 голосов
/ 13 сентября 2011

Если файлы предназначены только для чтения, вы можете поместить их на диск Azure, который, по сути, представляет собой VHD в формате NTFS, хранящийся в BLOB-объекте страницы (см. здесь для получения дополнительной информации).Каждый из ваших экземпляров роли может монтировать моментальный снимок этого диска, доступный только для чтения (и один экземпляр может одновременно получить доступ к записи).

Хранение файлов на локальном диске не будет работать, поскольку эти файлы нене реплицируется между экземплярами;Каждый экземпляр имеет свое собственное подключенное хранилище.

Обычным шаблоном является хранение содержимого в BLOB-объектах, возможно, в ZIP-файле, а затем копирование этих файлов из хранилища BLOB-объектов на локальный диск при запуске экземпляра.Например, вы можете взять Azure Accelerator для веб-ролей Нейта Тоттена .Вы увидите метод копирования ZIP-файлов в действии, поскольку он извлекает целые веб-сайты и распаковывает их в виртуальные каталоги.

0 голосов
/ 13 сентября 2011

Файлы могут не упаковываться, если вы не установили для свойства «Копировать в выходной каталог» значение «Копировать, если новее» / «Копировать всегда».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...