Как развернуть приложение Azure в рабочей среде без Azure - PullRequest
2 голосов
/ 25 января 2011

Я занимаюсь разработкой приложения Azure с использованием очередей, хранилища больших двоичных объектов и SQL Azure.Мы ожидаем, что некоторые клиенты не захотят размещать свои данные в облаке (из-за паранойи или юридических ограничений юрисдикции, в которой могут храниться данные) и захотят запустить систему на сервере, расположенном внутри их собственных данных.центры, на одном сервере.Использование SQL Server и создание альтернативы хранилищу больших двоичных объектов должно быть простым, но очереди Azure сложнее.Я предполагаю, что использование структуры разработки нежелательно, потому что документация MS говорит, что она должна работать от имени администратора.

Как мне поступить?

Ответы [ 2 ]

8 голосов
/ 25 января 2011

Я бы добавил слой абстракции над AzureQueues.

Что-то вроде:

public interface IQueueService
{
    // will create if not exists
    IQueue GetQueue(string name);
    IQueue GetQueueIfExists(string name);
}


public interface IQueue
{
    string Name { get; set; }

    void AddMessage(SimpleMessage message);
    void DeleteMessage(SimpleMessage message);
    SimpleMessage PeekMessage();

    void Clear();
}

и т.д ...

Это должно дать вам представление.Затем вы можете предоставить две реализации, одну из которых использует AzureQueues, а другую - MS Queues (http://en.wikipedia.org/wiki/Microsoft_Message_Queuing)

. Выбор реализации зависит от того, работаете вы в Azure или нет.

Я что-то сделалочень похоже в прошлом.

1 голос
/ 25 января 2011

Вам не нужно работать на фабрике разработчиков для доступа к ресурсам Azure. К блобам очень легко получить доступ через Интернет, я уверен, что вы можете сделать это с помощью таблиц и очередей, а также "http://'accountname'.queue.core.windows.net/" URL-адреса общедоступны.

Для удобного решения вы должны взглянуть на служебную шину Azure AppFabric, она в основном позволяет вам подключать или «проецировать» конечные точки веб-службы приложений в облаке, это в основном ретранслятор. (Звучит как волшебство, но на самом деле все довольно просто). Вы можете использовать одну и ту же служебную шину для предоставления общедоступным конечным точкам URL-адресов служб Azure Worker Role.

http://msdn.microsoft.com/en-us/library/ee732537.aspx

http://www.microsoft.com/windowsazure/appfabric/overview/default.aspx

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