В GAE покоряет простота deployment процесса и возможность версионности. Очень приятно осозновать что за пару секунд можно откатиться к предыдущей версии.
Ну и бесплатные лимиты очень приличные. У меня на сайтах примерно 600,000 показов страниц в месяц показываются бесплатно. И есть куда оптимизировать. Сами ограничения архитектуры подталкивают тебя в правильном направлении. Это очень здорово. И не надо думать о масштабируемости. Вернее надо, но не о низкоуровневых деталях, а в более высоких абстакциях.
Кстати стоит учитывать что стоимость записи прямо зависит от количества индексов.
Если не откатывается база данных, то могут быть проблемы со схемой. Старый код просто не поймет новую базу данных. В GAE конечно нету схемы, как в sql, но суть такая же. Обычно при откате на старую версию кода откатывается и база данных.
Ну надо понимать что нет общих способов быстро откатить неограниченное количество транзакций.
С опытом приходит понимание как делать изменения в схеме (которой кстати нет) так чтобы могли жить старая и новая версии. Поначалу пару раз попал в такую проблему, но последние пол-года ни разу проблем не было.
Думать заранее. Разделять деплойменты изменения схемы и функциональности приложения. В новой версии ветки if для поддержки старых версий. Дубликация данных — сохранение старых полей и их значений до тех пор пока не будет уверенности что всё ОК. И т.п.
Всегда удивляли такие заявления…
Что значит «я пытался на нем кодить, у меня не получилось на pyton»?
Открыли в редакторе чистый лист и что-то набрал — оно не заработало?
И чем тогда на Java проще будет? Сразу соображаловка появится?
Как можно было по туториалу от гугла не сделать helloworld хотя бы?
Там же все по шагам разобрано…
В общем думаю если это у вас не получилось, то программирование это не ваше…
Наверно мы друг друга не поняли, я имел ввиду не получилось — это не то, что чих пых как трудно вдуплить в туториал (меня конечно не задело, но не надо так про людей думать), а то что ну не удобно мне на нем как-то, поэтому не получилось у меня с ним сосуществовать вместе, то есть я не захотел продолжать изучать google app engine год назад.
Если есть опыт на С++/С#/PHP5/… то на Java действительно будет проще, наверное. От банального синтаксиса с {} до многих конструкций ООП (доступность свойств/методов, интерфейсы и т. п.)
В production ява и питон не особо различаются, разве что ява быстрее считает. Зато для неё нет множества полезных мелочей, доступных для питона. В целом, AE на питоне это взгляд гугла на разработку веб-приложений, а ява — поддержка устоявшегося корпоративного стандарта.
Если не знакомы ни с одним из языков, то лучше начинать с питона в нормальной IDE. Попробуйте поработать в PyCharm — она поддерживает GAE «из коробки» и существенно облегчает процесс разработки.
гаешечка легко тянет хабраэффект, лепроэффект и прочие эффекты — просто нефиг картинки хендлеравми отдавать, а использовать блобстор и пикасовую отдвалаку.
Понятно, но обычно под хабраэффектом подразумевают всплеск посещаемости за счет ссылок в посте. Тут первая картинка отдается непосредственно на главную Хабра, это на порядки больше траффика
О какой масштабируемости можно было бы говорить если бы GAE несправлялся с отдачей картинок для главной Хабра? Почитайте какие решения строятся на гаешечке и поймёте что хабраэффект для него это просто детский лепет.
Хабраэффект имеет место быть в данном случае, но только потому что у автора закончилисась квота и никак не из-за технических ограничений платформы.
Скорость и стоимость работы с данными Google App Engine в таблицах