Отзыв об использовании Google App Engine? [закрыто]

Хотите сделать очень маленький, быстрый и грязный побочный проект. Мне нравится тот факт, что Google App Engine работает на Python со встроенным Django - дает мне повод попробовать эту платформу ... но мой вопрос таков:

Кто-нибудь использовал движок приложения для чего-то кроме проблемы с игрушкой? Я вижу несколько хороших примеров приложений, так что я предположил бы, что это достаточно хорошо для реальной сделки, но хотел получить некоторую обратную связь.

Любые другие заметки об успехе / неудаче были бы хороши.

 SilentGhost28 янв. 2010 г., 16:22
должно быть сообщество вики

Ответы на вопрос(11)

Решение Вопроса

Я попробовал движок приложения для своего небольшого приложения для наблюдения за землетрясением http://quakewatch.appspot.com/

Моя цель состояла в том, чтобы увидеть возможности движка приложения, поэтому вот основные моменты:

it doesn't come by default with django, it has its own web framework which is pythonic has URL dispatcher like django and it uses django templates So if you have django exp. you will find it easy to use But you can use any pure python framework and django can be easily added see http://code.google.com/appengine/articles/django.html google-app-engine-django (http://code.google.com/p/google-app-engine-django/) project is excellent and works almost like working on a django project You can not execute any long running process on server, what you do is reply to request and which should be quick otherwise appengine will kill it So if your app needs lots of backend processing appengine is not the best way otherwise you will have to do processing on a server of your own My quakewatch app has a subscription feature, it means I had to email latest quakes as they happend, but I can not run a background process in app engine to monitor new quakes solution here is to use a third part service like pingablity.com which can connect to one of your page and which executes the subscription emailer but here also you will have to take care that you don't spend much time here or break task into several pieces It provides Django like modeling capabilities but backend is totally different but for a new project it should not matter.

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

Редактировать: Сейчасочереди задач может использоваться для запуска пакетной обработки или запланированных задач

Редактировать: после работы / создания реального приложения в GAE в течение года, теперь мое мнение таково, что, если вы не создаете приложение, которое должно масштабироваться до миллионов и миллионов пользователей, не пользуйтесь GAE. Поддержание и выполнение тривиальных задач в GAE является головной болью из-за распределенной природы, чтобы избежать ошибок, превышающих крайний срок, подсчитать объекты или выполнить сложные запросы, требуется сложный код, поэтому небольшое сложное приложение должно придерживаться LAMP.

Редактировать: Модели должны быть специально разработаны с учетом всех транзакций, которые вы хотите иметь в будущем, потому что сущности только в одной и той же группе сущностей могут использоваться в транзакции, и это делает процесс обновления двух разных групп кошмаром, например. перевести деньги от пользователя1 к пользователю2 в транзакции невозможно, если они не принадлежат к одной и той же группе лиц, но создание их в одной группе лиц может оказаться не лучшим решением для частых обновлений .... прочитай этоhttp://blog.notdot.net/2009/9/Distributed-Transactions-on-App-Engine

 06 дек. 2009 г., 00:24
Просто еще одно обновление, Django 1.1 теперь доступно с GAE, а также с предыдущими версиями.
 18 июл. 2009 г., 02:16
Большая часть этой информации устарела - Django 0.96 теперь встроен в GAE с 17 июля 2009 года.
 23 июн. 2009 г., 01:00
Ознакомьтесь с новым Python API очереди задач в документации по App-Engine.
 06 мая 2009 г., 11:56
Теперь пакетный процесс можно запустить на GAE
 01 сент. 2009 г., 16:48
Djanjo 1.0.x также включен в GAE. Вы можете выбрать, какая ревизия Django вам нужна.

Я думаю, что App Engine довольно хорош для небольших проектов на данный момент. Можно сказать, что больше никогда не придется беспокоиться о хостинге. API также подталкивает вас к созданию масштабируемых приложений, что является хорошей практикой.

app-engine-patch is a good layer between Django and App Engine, enabling the use of the auth app and more. Google have promised an SLA and pricing model by the end of 2008. Requests must complete in 10 seconds, sub-requests to web services required to complete in 5 seconds. This forces you to design a fast, lightweight application, off-loading serious processing to other platforms (e.g. a hosted service or an EC2 instance). More languages are coming soon! Google won't say which though :-). My money's on Java next.
 12 мая 2009 г., 11:44
@jhs Ваш комментарий делает это хорошо!
 03 мая 2009 г., 13:46
Если кто-то может отредактировать этот ответ, было бы неплохо отразить, что Java действительно является следующим доступным языком.
 23 февр. 2009 г., 13:45
по состоянию на февраль 2009 года многие из вышеуказанных ограничений были смягчены.
 13 мая 2011 г., 11:45
И язык Go теперь тоже поддерживается!

Я использовал GAE для создания простого приложения, которое принимает некоторые параметры, форматы и отправляет электронную почту. Это было чрезвычайно просто и быстро. Я также сделал несколько тестов производительности для сервисов хранения данных GAE и memcache (http://dbaspects.blogspot.com/2010/01/memcache-vs-datastore-on-google-app.html ). Это не так быстро. Я считаю, что GAE - это серьезная платформа, которая применяет определенную методологию. Я думаю, что это превратится в действительно масштабируемую платформу, где плохие практики просто не допускаются.

Я использовал GAE для своего флэш-игрового сайта,Бородатые игры, GAE - отличная платформа. Я использовал шаблоны Django, которые намного проще, чем старые времена PHP. Он поставляется с отличной административной панелью и дает вам действительно хорошие логи. Хранилище данных отличается от базы данных, такой как MySQL, но с ним гораздо проще работать. Создание сайта было простым и понятным, и у них есть много полезных советов на сайте.

Посмотрите наигра sql, он очень стабилен и фактически раздвинул ограничения трафика в какой-то момент, так что Google его задушил. Я не видел ничего, кроме хороших новостей о App Engine, кроме размещения вашего приложения на серверах, которые кто-то еще полностью контролирует.

 23 июн. 2010 г., 20:46
Игра sql перешла с Google App Engine на частный сервер.

Одна из убедительных причин использования Google App Engine - это интеграция со Службами Google для вашего домена. По сути, это позволяет создавать настраиваемые управляемые веб-приложения, которые ограничены (контролируемыми) входами в ваш домен.

Большую часть моего опыта с этим кодом я создавал простое приложение для отслеживания времени / задач. Шаблонный движок был прост и все же сделал многостраничное приложение очень доступным. API входа / осведомленности пользователя также полезен. Я смог создать парадигму публичной / приватной страницы без особых проблем. (пользователь мог войти в систему, чтобы увидеть личные страницы. Анонимному пользователю была показана только открытая страница.)

Я только что вошел в часть проекта хранилища данных, когда меня отвлекли на «настоящую работу».

Я смог сделать очень многое (это еще не сделано) за очень короткое время. Поскольку я никогда раньше не использовал Python, это было особенно приятно (и потому, что это был новый язык для меня, а также потому, что разработка все еще шла быстро, несмотря на новый язык). Я столкнулся с очень небольшим, что привело меня к мысли, что я не смогу выполнить свою задачу. Вместо этого у меня довольно положительное впечатление от функциональности и возможностей.

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

 agartzke21 сент. 2008 г., 07:40
Почти идентична моей ситуации - кроме «настоящей работы» но все же кое-что, что мне нужно сделать, и иметь функциональность в конце.
 03 июн. 2010 г., 01:21
Тоже самое. Кроме того, большим плюсом является то, что установка среды разработки выполняется очень быстро (вы программируете в течение минуты). То же самое для развертываний.

& Quot; Движок приложений, на котором запущен Django & quot; идея немного вводит в заблуждение. App Engine заменяет весь слой модели Django, поэтому будьте готовы потратить некоторое время на адаптацию к хранилищу данных App Engine, для которого требуется другой способ моделирования и анализа данных.

 agartzke21 сент. 2008 г., 06:24
Хороший момент - кажется, что по умолчанию он использует шаблоны Django, но не обязательно все остальное.

Я использую GAE для размещения нескольких приложений с большим трафиком. Вроде порядка 50-100 рэк / сек. Это здорово, я не могу рекомендовать это достаточно.

Мой предыдущий опыт веб-разработки был с Ruby (Rails / Merb). Изучение Python было легко. Я не связывался с Django, Pylons или любым другим фреймворком, просто начал с примеров GAE и собрал то, что мне было нужно, из предоставленных базовых библиотек веб-приложений.

Если вы привыкли к гибкости SQL, хранилище данных может привыкнуть. Ничего особо травмирующего! Самая большая корректировка - это уход от СОЕДИНЕНИЙ. Вы должны отказаться от идеи, что нормализация имеет решающее значение.

Бен

На этот вопрос был дан полный ответ. И это хорошо. Но одна вещь, возможно, стоит упомянуть. В движке приложений Google есть плагин для eclipse ide, с которым приятно работать.

Если вы уже разрабатываете Eclipse, вы будете очень рады этому.

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

 agartzke13 апр. 2010 г., 21:32
да, я использовал это. Очень мило на самом деле.

Я использовал GAE и Django для создания приложения на Facebook. я использовалhttp://code.google.com/p/app-engine-patch в качестве отправной точки, поскольку у него есть поддержка Django 1.1. Я не пытался использовать какие-либо команды manage.py, потому что предполагал, что они не будут работать, но я даже не смотрел на это. Приложение имело три модели, а также использовало pyfacebook, но в этом была сложность. Я нахожусь в процессе создания гораздо более сложного приложения, о котором я начинаю вести блог наhttp://brianyamabe.com.

 08 дек. 2009 г., 17:55
Я начал использовать manage.py для запуска сервера, а также для запуска некоторых модульных тестов. Запуск сервера работает нормально, но, поскольку мое приложение работает как приложение Facebook, оно не так уж и полезно (мне нужен хост-сервер, на который ссылается Facebook). Модульное тестирование также работало и даже работало со светильниками. Однако я не смог заставить работать приборы, которые ссылались на другие модели. Я до сих пор не понял, если это проблема с моим прибором или проблема с app-engine-patch.

Я использовал GAE, чтобы построитьhttp://www.muspy.com

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

Если вы не хотите заниматься вопросами хостинга, администрирования сервера и т. Д., Я определенно могу порекомендовать это. Особенно, если вы уже знаете Python и Django.

Ваш ответ на вопрос