Comentários sobre usando o Google App Engine?

votos
123

Olhando para fazer um projeto paralelo muito pequeno, rápido 'n sujo. Eu gosto do fato de que o Google App Engine está em execução em Python com Django construído na direita - me dá uma desculpa para tentar essa plataforma ... mas a minha pergunta é esta:

Alguém já fez uso do App Engine para outra coisa senão um problema de brinquedo? Eu vejo um bom exemplo apps lá fora, então eu diria que isso é bom o suficiente para o negócio real, mas queria obter algum feedback.

Quaisquer outras notas sucesso / fracasso seria ótimo.

Publicado 21/09/2008 em 04:41
fonte usuário
Em outras línguas...                            


11 respostas

votos
61

Eu tentei App Engine para o meu pequeno tremor aplicação relógio http://quakewatch.appspot.com/

Meu objetivo era ver os recursos do app engine, então aqui estão os principais pontos:

  1. ele não vem por padrão com o Django, ele tem seu próprio framework web que é pythônico tem despachante URL como Django e utiliza modelos de Django Então se você tem django exp. você vai achar que é fácil de usar
  2. Você não pode executar qualquer processo longo em execução no servidor, o que você faz é resposta ao pedido e que deve ser rápido caso contrário appengine irá matá-lo Então, se seu aplicativo precisa de muito processamento backend appengine não é a melhor maneira caso contrário você terá que fazer o processamento no servidor do seu próprio
  3. Meu aplicativo quakewatch tem um recurso de inscrição, isso significa que eu tinha que enviar e-mail mais recentes terremotos como eles aconteceu, mas eu não posso correr um processo de fundo na App Engine para monitorar nova solução terremotos aqui é usar um terceiro serviço de parte como pingablity.com que pode conectar a um da sua página e que executa o emailer assinatura, mas também aqui você terá que tomar cuidado para que você não passar muito tempo aqui ou quebrar tarefa em vários pedaços
  4. Ele fornece Django como recursos de modelagem, mas backend é totalmente diferente, mas para um novo projeto não deve importar.

Mas no geral eu acho que é excelente para a criação de aplicativos que não precisam de muito processamento em background.

Edit: Agora filas de tarefas pode ser usado para executar o processamento em lote ou tarefas agendadas

Edit: depois de trabalhar / criar uma aplicação real no GAE por um ano, agora meu parecer é que a menos que você está fazendo uma aplicação que necessita de escala para milhões e milhões de usuários, não use GAE. Manter e fazer tarefas triviais em GAE é uma dor de cabeça devido à natureza distribuída, para evitar prazo erros excedidos, contar entidades ou fazer consultas complexas requer código complexo, tão pequeno aplicativo complexo deve ficar para LAMP.

Edit: Os modelos devem ser especialmente concebido considerando todas as transações que você deseja ter no futuro, porque as entidades só na mesmo grupo de entidades pode ser usado em uma transação e torna o processo de atualização de dois grupos diferentes de dinheiro pesadelo por exemplo, transferência de user1 para user2 na transação é impossível a menos que eles estão em mesmo grupo de entidades, mas tornando-os mesmo grupo de entidades não pode ser melhor para fins de atualização freqüentes .... ler este http://blog.notdot.net/2009/9/Distributed-Transactions- on-App-Engine

Respondeu 21/09/2008 em 05:52
fonte usuário

votos
36

Eu estou usando GAE para hospedar várias aplicações de alto tráfego. Tal como na ordem de 50-100 req / seg. É ótimo, eu não posso recomendar o suficiente.

Minha experiência anterior com desenvolvimento web estava com Ruby (Rails / Merb). Aprender Python foi fácil. Eu não mexer com Django ou postes ou qualquer outro quadro, só começou a partir dos exemplos do GAE e construiu o que eu precisava para fora das bibliotecas webapp básicos que são fornecidos.

Se você está acostumado a flexibilidade de SQL o armazenamento de dados pode levar algum tempo para se acostumar. Nada muito traumático! O maior ajuste está se afastando de JOINs. Você tem que lançar a ideia de que a normalização é crucial.

Ben

Respondeu 19/02/2009 em 19:08
fonte usuário

votos
23

Uma das razões que se deparam para usar o Google App Engine é a sua integração com o Google Apps para seu domínio. Essencialmente ele permite que você crie o costume, conseguiu aplicações web que são restritos para os logins (controlada) de seu domínio.

A maioria da minha experiência com este código foi construindo uma aplicação simples de monitoramento de tempo / tarefa. O motor de template foi simples e ainda fez uma aplicação multi-page muito acessível. A api consciência login / usuário é semelhante útil. Eu era capaz de fazer um / paradigma página privada página pública sem muito problema. (Um usuário poderia fazer login para ver as páginas privadas. Um usuário anônimo só foi mostrado na página pública.)

Eu estava apenas começando a parte de armazenamento de dados do projeto quando me afastei para o "trabalho real".

Eu era capaz de realizar muito (ele ainda não está feito ainda) em uma quantidade muito pequena de tempo. Desde que eu nunca tinha usado Python antes, este foi particularmente agradável (tanto porque era uma língua nova para mim, e também porque o desenvolvimento ainda foi rápido, apesar da nova linguagem). Corri para muito pouco que me levou a acreditar que eu não seria capaz de realizar minha tarefa. Em vez disso eu tenho uma impressão bastante positiva das funcionalidades e características.

Essa é a minha experiência com ele. Talvez ele não representa mais do que um projeto de brinquedo inacabado, mas não representa um julgamento informado sobre a plataforma, e eu espero que ajude.

Respondeu 21/09/2008 em 06:12
fonte usuário

votos
12

A idéia "App Engine rodando Django" é um pouco enganador. App Engine substitui toda a camada de modelo Django para estar preparado para gastar algum tempo para se acostumar com o armazenamento de dados do App Engine que requer uma maneira diferente de modelagem e pensar sobre os dados.

Respondeu 21/09/2008 em 05:09
fonte usuário

votos
7

Eu acho que o Google App Engine é muito legal para pequenos projetos neste momento. Há muito a ser dito para nunca ter que se preocupar com hospedagem. A API também o empurra na direção da construção de aplicativos escaláveis, o que é uma boa prática.

  • app-motor-remendo é uma boa camada entre Django e App do motor, permitindo a utilização da aplicação de autenticação e mais.
  • Google prometeram um SLA e modelo de preços até o final de 2008.
  • Os pedidos devem completar em 10 segundos, sub-pedidos para serviços web necessários para completar em 5 segundos. Isso força você a projetar um aplicativo rápido e leve, off-loading séria de processamento para outras plataformas (por exemplo, um serviço hospedado ou uma instância EC2).
  • Mais idiomas estão chegando em breve! Google não vai dizer que embora :-). Meu dinheiro está em Java seguinte.
Respondeu 08/10/2008 em 17:28
fonte usuário

votos
7

Eu costumava GAE para construir http://www.muspy.com

É um pouco mais do que um projeto de brinquedo, mas não excessivamente complexo também. Eu ainda depender de algumas questões a serem abordadas pelo Google, mas no geral o desenvolvimento do site foi uma experiência agradável.

Se você não quer lidar com questões de hospedagem, administração de servidores, etc, eu posso definitivamente recomendo. Especialmente se você já sabe Python e Django.

Respondeu 23/09/2008 em 03:37
fonte usuário

votos
6

Esta questão foi totalmente respondida. Qual é bom. Mas uma coisa talvez vale a pena mencionar. O Google App Engine tem um plugin para o Eclipse IDE que é uma alegria para trabalhar.

Se você já faz o seu desenvolvimento com o eclipse que vai ser tão feliz com isso.

Para implantar no site do Google App Engine tudo o que precisa fazer é clicar em um pequeno botão - com o logotipo avião - super.

Respondeu 17/03/2010 em 13:52
fonte usuário

votos
4

Eu costumava GAE para o meu site de jogos flash, Jogos farpada . GAE é uma grande plataforma. Eu costumava modelos de Django que são muito mais fácil do que os velhos tempos de PHP. Ele vem com um painel de administração grande, e dá-lhe realmente bons logs. O armazenamento de dados é diferente de um banco de dados como MySQL, mas é muito mais fácil trabalhar com. A construção do site foi fácil e simples e eles têm muitos conselhos úteis sobre o site.

Respondeu 18/02/2010 em 22:58
fonte usuário

votos
4

Eu costumava GAE para construir uma aplicação simples que aceita alguns parâmetros, formatos e enviar e-mail. Foi extremamente simples e rápido. Também fiz alguns benchmarks de desempenho no armazenamento de dados GAE e serviços memchache ( http://dbaspects.blogspot.com/2010/01/memcache-vs-datastore-on-google-app.html ). Não é tão rápido. Minha opinião é que GAE é plataforma séria que impor determinada metodologia. Eu acho que vai evoluir para a plataforma verdadeiramente escalável, onde simplesmente não más práticas permitidas.

Respondeu 28/01/2010 em 16:20
fonte usuário

votos
4

Tome um olhar para o do jogo sql , é muito estável e realmente empurrou os limites de tráfego em um ponto para que ele estava sendo estrangulada pela Google. Não vi nada, mas boas notícias sobre o Google App Engine, além de hospedagem que você aplicativo em servidores alguém controles outra coisa completamente.

Respondeu 21/09/2008 em 04:47
fonte usuário

votos
3

Eu costumava GAE e Django para construir um aplicativo do Facebook. Eu costumava http://code.google.com/p/app-engine-patch como ponto de partida, pois tem Django apoio 1.1. Eu não tentar usar qualquer um dos comandos manage.py porque eu assumiu que não iria funcionar, mas eu nem sequer olhar para ele. A aplicação tinha três modelos e também utilizado pyfacebook, mas que era a extensão da complexidade. Eu estou no processo de construção de uma aplicação muito mais complicado que eu estou começando a blog sobre em http://brianyamabe.com .

Respondeu 10/09/2009 em 19:21
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more