Приложение Google App Engine чрезвычайно медленно

Я создал сайт Hello World в Google App Engine. Он использует Django 1.1 без каких-либо патчей.

Несмотря на то, что это просто очень простая веб-страница, это занимает много времени, и часто это время.

Любые предложения по его решению?

Примечание. Он отвечает быстро после первого вызова.

8 Solutions collect form web for “Приложение Google App Engine чрезвычайно медленно”

Это ужасное предложение, но я все равно его сделаю:

Создайте небольшое клиентское приложение или просто используйте wget with cron для периодического доступа к вашему приложению, возможно, раз в 5 минут или около того. Это должно заставить Google помещать его в состояние покоя.

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

Теперь Google добавила опцию оплаты «Always On», которая составляет 0,30 $ в день.

Используя эту функцию, вашему приложению больше не придется запускать холод.

Всегда включен

В то время как запросы на разминку помогают плавно применять приложение, они не помогают, если ваше приложение имеет очень низкий объем трафика. Для высокоприоритетных приложений с низким трафиком вы можете резервировать экземпляры с помощью функции «Всегда включено» в App Engine.

Always On – это функция премиум-класса, которая резервирует три экземпляра вашего приложения, никогда не отключая их, даже если приложение не имеет трафика. Это уменьшает влияние запросов на загрузку в приложениях с небольшим или переменным количеством трафика. Кроме того, если экземпляр Always On случайно умирает, App Engine автоматически перезапускает экземпляр с запросом на разминку. В результате приложения Always On обязательно должны делать как можно больше инициализации во время запросов на разминку.

Даже после включения Always On ваше приложение может испытывать запросы на загрузку при внезапном увеличении трафика.

Чтобы включить Always On, перейдите на страницу настроек платежных данных в консоли администратора приложения и установите флажок Always On.

http://code.google.com/intl/de-DE/appengine/docs/adminconsole/instances.html

Подводя итог этой теме :

  • Холодные пуски занимают много времени
  • Google не рекомендует пинговать приложения, чтобы они были теплыми, но люди не знают альтернативы
  • Существует проблема, связанная с оплатой теплого экземпляра (Java)
  • Для Python существует проблема . Помимо прочего, файлы .py не скомпилированы.
  • Некоторым приложениям непропорционально подвержены (не удается найти ссылки или выпуски групп Google)
  • В марте 2009 года нить о Python говорит <1s (!)

Я вижу меньше разговоров о Python по этой проблеме.

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

«Первая медлительность ударов» довольно распространена во многих веб-фреймворках. Это немного боль во время разработки, но не проблема для производства.

Еще один совет, который может увеличить время отклика.

Включение биллинга увеличивает квоты и, к моему личному опыту, увеличивает общий ответ приложения. Вероятно, из-за более высокого приоритета для приложений с поддержкой биллинга Google имеет. Например, приложение с отключением биллинга может отправлять до 5-10 писем / запросов, приложение с включенным биллингом легко справляется с 200 электронными письмами / запросами.

Просто не забудьте установить низкие уровни оплаты – вы никогда не знаете, когда Slashdot, Digg или HackerNews замечают ваш сайт 🙂

Я сталкиваюсь с тем же приложением на основе pylons. У меня есть начальный сервер страниц как статический, и у меня есть фиктивный вызов ajax, чтобы довести приложение до того, как пользователь вводит учетные данные. Обычно этого достаточно, чтобы избежать продолжительного ответа … Просто идея, которую вы можете использовать до того, как у вас действительно будет миллион пользователей;).

Я использовал pingdom по очевидным причинам – никакие холодные пуски не являются бонусом. Конечно, клиенты скоро будут стекаться, и это будет не проблема

Вы можете попробовать CloudUp . Он периодически проверяет ваши приложения Google, чтобы они были активными. Это бесплатно, и вы можете добавить столько приложений, сколько захотите. Он также поддерживает лазурный и герою.

  • Измените IntegerProperty на FloatProperty существующего AppEngine DataStore
  • Отправка электронной почты от имени пользователя Google Apps
  • Для чего я могу использовать Google App Engine?
  • Как я могу получить процент закодированных слэшей с Django на App Engine?
  • Как получить значение StringProperty в Python для Google App Engine?
  • Модельный шаблон дизайна для Google App Engine
  • Каков наиболее эффективный способ хранения списка кортежей в App Engine?
  • Ввод моделей в функцию обратного вызова из библиотеки ctypes
  • Python - лучший язык программирования в мире.