O documento apresenta um tutorial sobre como colocar uma aplicação online gratuitamente utilizando o Google App Engine (GAE). Ele explica os passos para criar uma conta no GAE, desenvolver um protótipo da aplicação localmente e publicá-la na nuvem do GAE, aproveitando os recursos e serviços oferecidos de forma gratuita, como armazenamento, balanceamento de carga e escalabilidade.
1. Do 0 a estar online no
Google App Engine
GDG São Carlos
01/11/2014
2. Disclaimer
• O evento de hoje é “Trazendo sua empresa para internet” do GDG e GBG
de São Carlos
• Meu nome é Priscila Mayumi Sato
• Hoje sou Fullstack Developer numa pequena startup
• Não sou a pessoa de negócios, sou a pessoa técnica
• Parte dos passos para criação de uma starup foram retirados do artigo de
Sérgio Tauhata (baseado na Learn Startup) encontrado em
http://goo.gl/HFwgEr
• Todas as imagens usadas possuem direitos CC e estão listadas no final da
apresentação
4. Mantenha-se antenado
• Acompanhe as novidades
• Converse com muitas pessoas
• Leia muito
• Perceba as necessidades que você ou seus
contatos possam ter
6. Ideias nascem
• Eu gostaria de ter uma forma de mensurar meus
posts no Instagram, e o Instagram é muito usado
por empresas… pq não criar uma app para isso?
7. Coloque a ideia sob a lupa
É preciso conhecer tanto os consumidores quanto a
concorrência
8. Coloque a ideia sob a lupa
• “Verificar se o conceito original se encaixa nas
premissas da startup”
• “Aberto a ouvir opiniões”
• “Saber se o mercado é amplo ou de nicho”
• “Checar se é um modelo fácil de ser reproduzido”
• etc
10. Monte o protótipo
• Descubra o que o mercado quer - fazendo o protótipo
• Use a estratégia de lançar um beta
• A própria comunidade se encarrega de aponta falhas e
avaliar funcionalidades
• “O custo do processo de CD é infinitamente menor que
o de uma pesquisa de mercado(…)” afirma Marcelo
Amorin da Jarcard Investimentos
11. Monte o protótipo
• CD - Customer Development - desenvolvido por
Steve Blank
• CD - Processo detalhado para testar e validar ideias
• Use: desenvolvimento ágil - velocidade de
aprendizado por meio de feedbacks
• Use commodity: serviços, frameworks, tecnologias
open source, etc
12. Use cloud
• Você pode disponibilizar sua aplicação em questão
de instantes
• Você paga por uso
• Serviços de cloud te dão pré configurados vários
serviços como memcache, por exemplo
• Serviços de cloud são flexíveis, se sua aplicação
“der certo” e crescer você pode escalar mais rápido
14. Google App Engine
• Serviço de cloud da Google de PaaS
• Gratuito para começar
• Infra-estrutura da Google - aberto ao público em
2008 e estável em 2011
• Linguagens suportadas: Java, Python, Go e PHP
15. Vantagens do GAE
• Poucas configurações
• Balanço de carga
• Replicação
• Infraestrtura da Google
• Diversos serviços da Google disponíveis
16. GAE números em 2013
• 300.000+ desenvolvedores ativos
• 3.000.000+ aplicações ativas
• 7.500.000.000+ hits por dia
• 4.500.000.000.000+ data resquests
• fonte: http://goo.gl/zv7Dt7
17. Alguns serviços do GAE
• Memcache API - cache in-memory para alta performance
• Datastore - database storage
• URLFetch - invoca URLs externas
• Mail - envia e-mails da sua aplicação
• Task Queues - fila de processos
• Images - api para manipulação de imagens
• Cron Jobs - processos agendados para rodar
• User Accounts - autenticação usando contas Google
18. GAE casos de uso
• Mobile/Tablet
• App backends
• Cloud persistente
• Social/Mobile Games
• Speed, scale
• API integrations
• Personals/dating
• Entre outros
• fonte: http://goo.gl/zv7Dt7
19. Cota gratuita
• Cada conta pode hospedar até 25 aplicações gratuitas e um número ilimitado de
aplicações pagas
• 5GBs de Google Cloud Storage
• 5GBs de BlobStorage
• Dados estáticos e códigos: 1GB
• Logs de até 1GB
• 28 horas de instancia por dia
• 100 chamadas a API de e-mail por dia
• Entre outros limites da quota gratuita em
https://cloud.google.com/appengine/docs/quotas
20. Voltando a minha ideia
• Primeiro passo: fazer uma landpage para mostrar a
web app
25. Adicionar minha app no GAE
• Para subir a app você precisa do SDK, no caso
estou usando o SDK PHP
• Necessário python 2.7, PHP 5.4+, MySQL 5.5 na
máquina
• Você usa comandos para interagir e subir sua
aplicação
27. Adicionar minha app no GAE
• Ele vai adicionar 3 arquivos:
• favicon
• main.php (com o Hello Wolrd)
• app.yaml
28. Adicionar minha app no GAE
• app.yaml é o arquivo de configuração da sua app
• configura rotas, versão e runtime
• Agora é clicar em rodar e testar em localhost:8080
29. Para casos linux
• wget
http://googleappengine.googlecode.com/files/google_appengine_
1.8.9.xip
• unzip google_appengine_1.8.9.zip
• gcloud auth login
• cd endereço-do-projeto
• gcloud init id-do-projeto
• google_appengine/dev_appserver.py id-do-projeto/ - -
php_executable_path <php-cgi>