2016-10-23 4 views
4

Я использую nodejs гибкую среду документированы hereпочему развертывание AppEngine Google занимает несколько минут, чтобы услуга обновления

Ничего особенного в конфигурации

runtime: nodejs 
vm: true 
service: SimpleExpressService 
health_check: 
    enable_health_check: False 
automatic_scaling: 
    min_num_instances: 1 
    max_num_instances: 4 
    cool_down_period_sec: 120 
    cpu_utilization: 
    target_utilization: 0.5 

Вот моя команда развертывания

gcloud app deploy -q --promote --version $VER 

Всякий раз, когда я развертываю новую версию, почти все идет очень быстро. Однако шаг «Обновление службы [SimpleExpressServer]» занимает несколько минут.

В любом случае, чтобы улучшить этот шаг?

enter image description here

+0

Это довольно страшно. Я действительно думал, что шаг разбился примерно через 10 минут. Я просто обновлял 'package.json'. – Clark

ответ

3

От Deploying your program:

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

Чтобы изменить это поведение, вы можете указать идентификатор версии с этим флагом версии:

gcloud app deploy --version myID 

Вы также можете указать не посылать весь трафик на новую версию сразу с --no-продвижение флаг:

gcloud app deploy --no-promote 

Таким образом развертывание включает в себя перезапись указанной версии приложения и коммутацию трафика на вновь развернутую версию.

При повторном развертывании определенной версии есть куча дополнительных материала, чтобы быть сделаны по сравнению с 1-го развертывания этой версии, которая включает в себя по крайней мере:

  • переключение трафика от версии является перезаписаны
  • выключая экземпляры под управлением предыдущей версии кода:
    • определения типа масштабирования
    • вывод из которых являются ходовые экземпляры
    • любой льготный период для выполнения запросов в ходе
    • любой льготный период для завершения отключения крюков (если применимо)
    • посылая им /_ah/stop запрос
  • Завершение эксплуатации старого vm экземпляры
+0

Спасибо. Я понимаю процесс, поэтому, эти 10+ минут, чтобы сделать все это, установлены в камне или есть какие-либо настройки конфигурации, которые могут помочь нам сократить время? – Sahas

+0

Нет, что я знаю. –

+0

Существует буквально никакой причины для того, чтобы этот шаг был таким долгим. now.sh делает это до 30 лет! https://twitter.com/rauchg/status/834222303105867777 – stanm87

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