Как лучше всего обновить данные во всех моих экземплярах Azure?
У меня есть несколько экземпляров, каждый из которых выполняет одну и ту же веб-роль. При запуске роли данные считываются из хранилища BLOB-объектов в локальное хранилище. Периодически будут обновляться данные, используемые сайтом. Я хочу иметь возможность программно уведомлять каждый экземпляр, чтобы получить обновленные данные из хранилища больших двоичных объектов в локальное хранилище экземпляра, чтобы каждый экземпляр обновлялся.
Одна из идей - написать специальную клиентскую программу для вызова веб-сети.service в веб-роли, передав идентификатор роли для обновления. Если конечная точка является идентификатором роли, то экземпляр обновляется. В противном случае клиент пытается снова, пока все экземпляры не сообщат, что они обновлены. Это хороший подход или в Azure есть встроенный метод для этого?
Я рассмотрел отдельный поток, который периодически проверяет наличие флага обновления, хотя я опасаюсь, что мои экземпляры станут не синхронизированными.
Данных не так много, поэтому я мог бы поместить их в кеш Azure. Однако меня беспокоит задержка в сети при использовании кеша. Хорошо ли с этим справляется кэш Azure?
Другой вариант - просто перезагрузить экземпляры один за другим (при этом операция обновления выполняется при запуске роли).