Как работает автоматическое масштабирование Google App Engine?
Google довольно хитроумно относится к своим бизнес-стратегиям. Этот вопрос касается квот и экземпляров Google App Engine.
Я развернул приложение GAE без указания какого-либо конкретного алгоритма масштабирования. Из их документов кажется, что по умолчанию используется автоматическое масштабирование. Но когда они масштабируют приложение для другого экземпляра? Какой запрос / с вызывает запуск второго экземпляра и разделение трафика?
Также, случается так, что автоматическое масштабирование предлагает 28 бесплатных часов в день (и это возможно только для экземпляра веб-интерфейса), но бэкэнд-экземпляры предлагают 9 часов в день (с ручным и базовым масштабированием, даже если вы указываете только 1 экземпляр для ручного управления). масштабирование).
Так что теперь, если вы хотите использовать небольшое приложение GAE бесплатно, вы выбрали бы экземпляры веб-интерфейса (поскольку они будут бесплатными, если вам нужен только один их экземпляр). Но они также имеют автоматическое масштабирование! АГА! Так что это означает, что они могут масштабироваться без вашего ведома, и вы можете легко прыгать 28 часов в день.
Поэтому мой вопрос: когда точно появляется новый экземпляр? Google ловко избегает ответа на этот очень важный вопрос, пока они не обманывают пользователей:)
1 ответ
На самом деле это довольно хорошо объяснено.
Из масштабирования динамических экземпляров:
Планировщик App Engine решает, обслуживать ли каждый новый запрос с существующим экземпляром (либо бездействующим, либо принимает параллельные запросы), помещать запрос в очередь ожидающих запросов или запускать новый экземпляр для этого запроса. Решение принимает во внимание количество доступных экземпляров, скорость, с которой ваше приложение обслуживает запросы (его задержку), и время, необходимое для запуска нового экземпляра.
Каждый экземпляр имеет свою очередь для входящих запросов. App Engine отслеживает количество запросов, ожидающих в очереди каждого экземпляра. Если App Engine обнаруживает, что очереди для приложения становятся слишком длинными из-за повышенной нагрузки, он автоматически создает новый экземпляр приложения для обработки этой нагрузки.
Можно настроить параметры для автоматического масштабирования, см. " Изменение параметров производительности автоматического масштабирования и элементов масштабирования".
Если вы действительно хотите установить жесткое ограничение на количество экземпляров, вам, вероятно, придется использовать базовое масштабирование с max_instances
Конфиг или ручное масштабирование.