Стоит ли ожидать, что Google App Engine будет случайным образом перезапускать экземпляры?

Стоит ли ожидать, что Google App Engine будет случайным образом перезапускать экземпляры?

Вчера у меня был один экземпляр приложения (стыдно мне), работающий в регионе australia-southeast1.

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

Это то, чего я должен ожидать? Экземпляры случайно исчезают и перезапускаются? Я понимаю, что у меня должно было быть запущено несколько версий, но что, если обе версии перезапустятся одновременно?

В журналах не отображается никаких ошибок в момент перезапуска приложения (стандартного, простого приложения Rails). В журналах есть только 8-минутный промежуток, после которого Puma загружается в новом экземпляре.

Использование ЦП было постоянным и редко превышало 5%. Использование памяти составляло около 840 МБ с небольшим пиком в 880 МБ непосредственно перед перезапуском. "Disk Bytes" был постоянным ~15 КБ/сек с большим пиком в 40 МБ/сек около времени перезапуска.

приложение.yaml

entrypoint: bundle exec rackup -p $PORT
env: flex
runtime: ruby

handlers:
- url: .*
  script: main.app
  secure: always

automatic_scaling:
  min_num_instances: 1
  max_num_instances: 4
  cpu_utilization:
    target_utilization: 0.75

решение1

Согласно документации, существует 2 основные причины неожиданного перезапуска:

  • Экземпляры перезапускаются еженедельно [1].
  • Проверка работоспособности, дающая HTTP-код, отличный от 200 [2].

Если вы предоставите дополнительную информацию, мы сможем ее обсудить.

решение2

Похожая проблема у меня; новые проверки здоровьяне проверяйте приложение, только виртуальная машина и Docker (если только вы не настроили их для проверки своего приложения, чего я не делал), поэтому кажется вполне очевидным, что проблема в самом движке приложения.

Редактировать: Не уверен, почему отрицательный ответ, но чтобы было понятнее.

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

Связанный контент