Обновление данных во всех экземплярах Azure

Как лучше всего обновить данные во всех моих экземплярах Azure?

У меня есть несколько экземпляров, каждый из которых выполняет одну и ту же веб-роль. При запуске роли данные считываются из хранилища BLOB-объектов в локальное хранилище. Периодически будут обновляться данные, используемые сайтом. Я хочу иметь возможность программно уведомлять каждый экземпляр, чтобы получить обновленные данные из хранилища больших двоичных объектов в локальное хранилище экземпляра, чтобы каждый экземпляр обновлялся.

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

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

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

Другой вариант - просто перезагрузить экземпляры один за другим (при этом операция обновления выполняется при запуске роли).

6
задан Mister Cook 18 June 2011 в 20:12
поделиться