Частые перезапуски на Google App Engine Standard второго поколения - PullRequest
1 голос
/ 08 мая 2020

У нас есть проблема с частыми перезапусками экземпляров App Engine, которые длятся 15–30 минут, иногда может быть 1 час.

За последние 24 часа у нас было 72 перезапуска экземпляров. Мы просмотрели журналы, но не смогли найти никаких сообщений об ошибках, объясняющих это.

Min_instances установлено на 1.

Приложение представляет собой приложение PHP Codeigniter. во время выполнения php73.

Возможно, это актуально, поскольку оно регулярно появляется в журнале, а не одновременно с веб-запросами:

A 2020-05-01T17:46:46.675532Z [start] 2020/05/01 17:46:46.674713 Quitting on terminated signal 
A 2020-05-01T17:46:46.900441Z [start] 2020/05/01 17:46:46.899377 Start program failed: termination triggered by nginx exit 

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

Все запросы страниц обычно загружаются в течение 1-80 мс, нет тяжелых скриптов. Похоже, что экземпляры взломали sh в режиме ожидания.

Мы также пытались увеличить тип инстанса до F4 с теми же результатами.

Графики использования ЦП и памяти не дают нам никаких подсказок.

Проблема заключается в загрузке запросов посетителей сайта. В большинстве случаев сайт быстрый и отзывчивый, но это возможно при случайном времени загрузки более 1 с при запуске новых экземпляров. Мы настроили запросы на прогрев, но это не распространяется на все запуски экземпляров.

Это нормальное поведение? Как мы можем отлаживать дальше? Есть подсказка, что может быть не так?

Спасибо за любую помощь.

РЕДАКТИРОВАТЬ: Вот наш app.yaml:

runtime: php73
entrypoint: serve public_html/index.php

instance_class: F2
automatic_scaling:
  min_instances: 1

inbound_services:
- warmup

vpc_access_connector:
  name: "xx"

handlers
- url: /
  script: auto
  secure: always

- url: /(.+)
  script: auto
  secure: always  

env_variables:
  CLOUD_SQL_CONNECTION_NAME: xx
  REDIS_HOST: xx
  REDIS_PORT: xx
...