2014-01-15 8 views
2

У меня есть новый проект ASP.NET MVC, который будет размещен в Azure с использованием их облачных сервисов с запуском нескольких веб-ролей. Мой вопрос заключается в том, как выполнять производственные развертывания с помощью FluentMigrator для изменения базы данных.Развертывание FluentMigrator и Azure

Если я запускаю FluentMigrator во время развертывания TeamCity, кажется, что он сначала обновит базу данных, а затем выполнит развертывание для нескольких веб-ролей по одному за раз. Поэтому кажется, что некоторые пользователи будут обращаться к старой версии сайта и использовать новую структуру базы данных, которая приведет к возникновению несоответствий и исключений.

Каковы наилучшие практики/предложения по развертыванию в среде Azure SQL Database с использованием FluentMigrator?

ответ

0

Прежде всего, убедитесь, что вы развернетесь в промежуточном слоте и только сделайте VIP-обмен, как только вы счастливы, все работает нормально.

Если ваши миграции включают в себя такие вещи, как добавление столбцов, индексов и таблиц - это будут нелатичные изменения, а ваш старый код должен отлично работать с новой базой данных.

Если ваши миграции включают в себя изменение изменений (изменение имен столбцов, удаление столбцов, изменение типов данных столбцов), то при развертывании вы должны разместить холдинговую страницу. У нас есть флаг, который мы устанавливаем в файле конфигурации, который служит для страницы холдинга, когда мы выполняем эти типы развертываний.

Смежные вопросы