Мы написали высоко масштабируемый Cloudservice для MS Azure с двумя ролями: «WebsiteRole» и «WebsiteWorkerRole». Для повышения производительности мы используем Cloudservice в нескольких регионах (2x US, 2x EU, 1x JP). У нас есть разные файлы конфигурации для каждого региона (EuWestProductive.azurePubxml, ServiceConfiguration.CloudEuWest.cscfg, Web.ReleaseEuWest.config).Azure: не развертывать роль по конфигурации
Теперь проблема: в каждом регионе у нас есть «WebsiteRole» и «WebsiteWorkerRole». Но у «WebsiteWorkerRole» есть только очень маленькие задачи, поэтому одного лишнего экземпляра в одном регионе более чем достаточно.
Мы попытались установить значение экземпляра роли равным нулю (ServiceConfiguration.CloudEuWest.cscfg). Но это недопустимо: Azure Feedback: Allow a Role instance count of 0
Есть ли другой способ удалить роль при развертывании Cloudservice?
Технически да, но для некоторых параметров, которые находятся в файле ServiceDefinition, например, VM Size, что вам нужно сделать какую-то работу, чтобы получить, что прежде чем выполнять сборку и развертывание, так как этот файл упакован вместе с кодом. Существует множество способов сделать это, например, пользовательские шаги сборки, отдельные проекты Cloud Project в VS, как то, что вы сделали выше, и т. Д. Любая конфигурация конфигурации службы легко обрабатывается во время развертывания. – MikeWo