В настоящее время у меня есть веб-сайт на Google App Engine, записанном в платформе веб-приложения Google. То, что я хочу знать, - то, что преимущества преобразования моего приложения для выполнения с django? И каковы оборотные стороны? Также, как сделал Вас, парни кодируют Ваши приложения GAE? Вы использовали веб-приложение или django? Или Вы шли совершенно другим путем и использовали API Java?
Спасибо
Используя Django в GAE, вы получаете все преимущества (а также не преимущества) GAE. Преимуществами являются в основном автоматическая масштабируемость и высокая надежность при очень низких затратах.
Вы можете начать со следующего:
попробуйте kay-framework, если вы ищете фреймворк, специально разработанный для движка приложений Google.
Прошлым летом я выполнял некоторые работы по Django/GAE (см. Погружение в веб-разработку ). Патч движка приложения App Engine Patch является обязательным.
Единственной реальной проблемой, с которой я столкнулся, был лимит загрузки/выгрузки 1М, наложенный GAE. Я мог загружать большие файлы, используя HTTP прямо в S3, но не мог получить их через GAE. Надеюсь, что с тех пор они сняли это ограничение.
Как оказалось, я задал тот же самый вопрос:
Зачем использовать Django в Google App Engine?
В основном он решался на два пункта:
Мой вопрос (в сочетании с огромным количеством информации, предоставленной Даниэлем Вассалло) должен ответить на ваш вопрос полностью.
GAE - отличный инструмент для новых и небольших проектов, которые не требуют реляционной базы данных. Я использую ряд решений для веб-хостинга.
1) Я построил www.gaiagps.com на приложении приложений, потому что это было просто некоторое брошюровое пособие, а крошечный магазин клавиш-значений для части блога.
2) Мой коллега также построил веб-гусенику на GAE, потому что это было просто несколько простых сценариев Python, которые собирали веб-страницы. Это приложение на самом деле отправляет данные в EC2, тем не менее, когда выполняется больше работы.
3) Я принимаю www.trailbehind.com на EC2, потому что он использует Geo-Database (PostGIS), которую вы бы в основном должны были реализовать себя на приложении.
4) Я принимаю TRAC и SVN на WebFaction, потому что это не на полке для любого нарезания.
Если мне нужно сделать сайт через пару дней, я использую GAE. Если это большой или существующий проект, или имеет базу данных Funky, я использую что-то еще.
Я недавно изменил свою разработку с webapp на django (с помощью app-engine-patch b/c они добавили больше возможностей). Загляните в app-engine-patch здесь:
http://code.google.com/p/app-engine-patch/
Мне очень понравилось, как просто было использовать webapp, и у него были все необходимые инструменты на некоторое время. Однако, когда дело дошло до добавления аккаунтов пользователей на мой сайт, я обнаружил, что либо я должен был развернуть свою собственную систему (с сессиями и т.д., что может усложнить GAE), либо использовать аккаунты Google/gmail с webapp.
Я не хотел, чтобы моим пользователям приходилось сначала регистрироваться в Google/gmail, прежде чем они зарегистрируются у меня.
Поэтому я испытываю django с app-engine-patch, потому что они уже реализовали пользовательскую функциональность от django, и кажется, что она работает просто отлично.
С Django vs Webapp они оба имеют схожую производительность, и оба предлагают автоматическую масштабируемость и т.д.
У Django есть отличная валидация форм и т.д., но я вижу в пользовательских вещах наибольшую разницу между ними.
Удачи.
Если вы ищете другие фреймворки GAE CMS, помимо Django, обратите внимание на Vosao . Это среда Java CMS, которая использует Velocity для шаблонов. Фреймворк все еще находится на стадии альфа-тестирования и активно развивается. Текущая версия (0.2.3) стабильна и функциональна.
Вы можете увидеть пример работающего сайта Vosao в моем личном домене .
Я предпочитаю webapp. Согласно Google, он лучше масштабируется и, кажется, лучше интегрирован с инфраструктурой App Engine. Плюс он более легкий.