Pull to refresh

Comments 27

Спасибо за то, что поделились опытом. Но меньше чем за $30 в месяц можно взять у hetzner неплохую VPS а на ней развернуть такой скрипт с nginx + wsgi не составит особого труда.
Если я правильно посчитал то эта VPS обойдется мне в теже 20$ + легкий геморой с настройской севера и — нет графической статистики :)
ru.hetzner.com/hosting/produkte_vserver/vq12 — 11 евро, 15 долларов?

Геморрой да, но расширяемость есть за те же деньги. 2 Тб трафика — вы смотрели сколько это на GAE? Узкое место для меня было бы 40Гб, но и то вполне недорого.

В общем, у каждого свой случай, но я как ни считал все «облачные» решения, гораздо дороже. Особенно, что количество посетителей может неожиданно вырасти.
А Вы пробовали использовать бесплатную квоту?
Я плачу только за превышение бесплатной квоты. У меня как видно в последний день превышение на 13 процессорных часов примерно.
Меня смущает то, что оранжевая кривая на графике «Типы инстансов» — активные инстансы — лежит на оси «x». Сколько у Вас выставлено в Application Settings -> Performance -> Max Idle Instances?
Я так и предполагал. Поскольку Вы не ограничили количество простаивающих инстансов и не указали таймаут ожидания, то GAE сам решает сколько инстансов нужно запустить, чтобы в кратчайшие сроки обработать все ваши запросы. Он может запустить их очень много. После этого они все будут стоять без работы 15 минут, прежде чем он их прибьет. Если в «Max Idle Instances» поставить 1, а в «Min Pending Latency» — 1.0s, то Вы, скорее всего, получите бесплатную платформу.
Спасибо большое! Не знал, но искренне надеялся получить такие полезные советы по оптимизации. Постараюсь через некоторое время отписать что получилось.
С нетерпением жду результатов с новыми настройками инстансов, особенно по финансам Отпишитесь, пожалуйста.
А вы уверены, что поставив максимально 1 инстанс сервер будет доступен 24/7? GAE не юзал, но логика подсказывает, что 1 инстанс для 1 запроса в 2 секунды (усредняю) — чёт маловато…
Как маловато? Обработчик «пустой», время выполнения на порядки меньше 1 секунды.
Так что более чем хватает для такой задачи.
Max Idle Instances

Активно работающих при этом может быть сколько угодно.
Скрипт который ничего не делает, работающий со скоростью 50 ms/request !?
Я привел сам скрипт. Сам пока затрудняюсь ответить куда уходит столько времени.
хотя возможно запись в лог много отъедает, попробую убрать.
Тем кто хочет использовать статистику в десктопных и мобильных проектах возможно стоит взглянуть в сторону этого сервиса.
Мельком глянул и что-то условия не радуют. Базовая лицензия 39$, хранение данных 3 месяца (на гугле неограниченно), кол-во сессий от приложений 50000 (у меня уже в день идет порядка 43000). Понятно что у них уже много специальных функций относительно статистики, но при таких условиях я как-нибудь сам :)
А у меня в декабре недели 2 крутился счетчик на бесплатном (однодолларовом) аккаунте на
cloudpronto.com и не было заметно особых тормозов. Но там правда поменьше было — 12-15 тыс в сутки, но все равно, по-моему платить 30 в месяц за простую статистику не спортивно?
Предположим, что вам при нагрузке в 40 тысяч придется всетаки съехать на следующий план за 15$. У меня получается 20$. 5$ разница это уже не так много. Темболее я подошел к решению проблемы в лоб (воспользовался настройками по умолчанию) и еще не делал особо никаких оптимизаций.
У вас загрузка инстансов выглядит как синусоида. Скорее всего большинство пользователей запускают программу в определенное время, и все 40000 копий начинают одновременно сообщать статистику. Может быть добавить в приложение какой-нибудь коэффициет случайности когда отправлять запрос, а не в момент запуска программы? Это сделает нагрузку более равномерной.
Все верно, максимальное кол-во запусков приходится на день. Потом к ночи запусков меньше и меньше. Поскольку люди работают днем а ночью спят, то случайный запуск никак не уровняет эту синусоиду :)
По-моему, это плохой способ уменьшить количество запросов, хоть и хитрый. Вдруг программа вылетит? Всякое бывает… Тут и так не считаются люди, что запустили программу без инета — эт тоже ведь не гуд, мне бы захотелось поподробнее статистику )
Как вариант можно еще заюзать openshift.redhat.com/
Особенно если не нужны фишки типа исходящей почты.
По крайней мере Redmine/ChiliProject у нас там отлично работают.(Кроме почты, но и это обещают скоро поправить)
UFO landed and left these words here
Я бы дергал какой-нибудь файл с нужными параметрами, типа site/track/img.gif?app=vasyasoft и потом в логах вебсервера смотрел, что происходит. Нагрузки — 0.
Не пробовали переводить на Python 2.7 и webapp2? Поправить код — сущие пустяки, зато на одном инстансе будет обрабатываться куча запросов параллельно.
Sign up to leave a comment.

Articles