Как поменять базу данных в слотах развертывания Azure Web App? - PullRequest
0 голосов
/ 22 февраля 2019

Я понимаю, что каждый слот имеет свою собственную конфигурацию, но как насчет миграций БД?Как они применяются?Допустим, я развертывался на стадии с миграциями, так что стадия базы данных обновляется.Как обновляется производственная база данных?И как мне получить доступ к переменным в моем коде?

Ответы [ 2 ]

0 голосов
/ 05 марта 2019

проблема в том, что автоматическое развертывание занимает больше 3 минут, но перенос базы данных выполняется примерно за 30 секунд

0 голосов
/ 04 марта 2019

Когда вы обновляете промежуточный слот, тот, который подключен к этому слоту, будет обновлен.

Позвольте мне описать два сценария -

  1. Рабочий слот и слот промежуточного уровняиспользует ту же БД: в этом случае, если вы обновите код и выполните обновление до промежуточного слота, производственная БД получит все миграции db, так как она также связана с промежуточным слотом.Это может быть не идеальным подходом.

  2. Рабочий слот и промежуточный слот используют отдельную БД: здесь, если вы запустите обновление на промежуточном слоте, миграция БД будет выполняться на подключенной БДв этот слот и производство дБ останется без изменений.

Теперь, 1-й сценарий не будет хорошей идеей, поскольку вы вносите изменения непосредственно в свою производственную базу данных.Но вы получаете полностью обновленную базу данных.Во втором сценарии это безопасно, но ваши последние данные могут быть непоследовательными.

Лучшей идеей будет следовать 2-му сценарию для тестирования.И когда тест завершен -

  1. Создание сценария для переноса БД,
  2. Резервное копирование производственной БД
  3. Запуск переноса БД вручную
  4. Сменный производственный слот с промежуточным слотом
...