O conceito de computação em nuvem em inglês, Cloud Computing, refere-se à utilização da memória e da capacidade de armazenamento e cálculo de computadores e servidores compartilhados e interligados por meio da Internet, seguindo o princípio da computação em grade.
O armazenamento de dados é feito em serviços que poderão ser acessados de qualquer lugar do mundo, a qualquer hora, não havendo necessidade de instalação de programas ou de armazenar dados. O acesso a programas, serviços e arquivos é remoto, através da Internet – daí a alusão à nuvem. O uso desse modelo (ambiente) é mais viável do que o uso de unidades físicas.
SandBox
O SandBox, em português, caixa de areia (onde as crianças brincam e o gato faz caca, nem precisa explicar, não é?), é um ambiente de desenvolvimento utilizado para desenvolvimentos primários, existem vários tipos de ambiente SandBox e geralmente estão associados a uma metodologia de desenvolvimento. Por exemplo, desenvolvimento de grandes aplicações, uma equipe de desenvolvedores podem utilizar o ambiente de SandBox para criar e testar aplicações sem risco de interferir com a configuração do ambiente de desenvolvimento oficial, após a aplicação ser testada ela passa para um ambiente DEV oficial e o ambiente de SandBox é descartado, sendo constantemente atualizado com uma copia do ambiente de desenvolvimento da empresa. Em desenvolvimento para a web, as empresas que permitem programação em seus ambientes, disponibilizam um ambiente de SandBox para que o usuário aprenda a criar aplicações utilizando virtualizações dos seus ambientes de desenvolvimento, porem sem interferir nos mesmos.
Para permitir que o Google App Engine distribua os pedidos para aplicações em vários servidores web, e para evitar uma aplicação de interferir com a outra, o aplicativo é executado em um ambiente de “sandbox” restrito.
Google SandBox Python: https://developers.google.com/appengine/docs/python/#Python_The_sandbox
Editor de Código – Python
Você pode utilizar qualquer editor de texto ou IDE para criar suas aplicações Python, recomendamos que para Windows você utilize o editor open source chamado Notepad++ que pode ser baixado clicando aqui.
O que você deve saber sobre o Google Cloud
- O nome da aplicação é chamado de AppID e deve ser único para não haver colisão de nome na web.
- As boas praticas recomendam criar nomes de aplicação e diretórios utilizando caracteres minúsculos.
- O servidor web local do Google App Engine é baseado na tecnologia Apache.
- As portas locais não devem colidir com outras portas em uso por algum servidor web em seu computador.
Cloud Google – Criando uma aplicação: Hello World App
Agora que você já sabe os princípios do conceito de programação nas nuvens, vamos criar nosso primeiro programa Cloud, presumimos que você já tenha instalado em seu computador o Google App Engine e a versão do Python 2.7.x.
1- Abra o Google App Engine Launcher, no menu File clique em Create New Application, escolha o nome da aplicação e um diretório para os arquivos de código fonte que serão gerados automaticamente:
2 – Dê um duplo clique na sua aplicação, e uma janela o questionara da porta local para o servidor web do App Engine, as portas não devem colidir, escolha uma porta e clique em Update:
3 – Com sua aplicação selecionada clique no botão Run e espere até que o ícone da aplicação fique verde:
4 – Agora seu servidor web local esta rodando e sua aplicação pode ser testada. Os códigos fontes foram gerados no diretório local que você escolheu quando criou sua aplicação, entre no diretório e abra o arquivo chamado main.py no editor Notepad++:
5 – O Google App Engine cria aplicações no modelo MVC, utilize o código abaixo para modificar o código gerado automaticamente, salve e clique no botão Browser, sua aplicação será aberta localmente no seu navegador web:
6 – Tudo Ok localmente, agora vamos utilizar os servidores Cloud do Google para hospedar nossa aplicação. Você precisa de uma conta do Google, crie caso ainda não tenha, clique no botão Dashbord para criar sua aplicação nos servidores do Google, preencha seu AppID (nome da Aplicação), concorde com os termos de serviço e clique no botão criar:
7 – Após criar sua App no ambiente Cloud do Google, clique no botão Deploy para efetuar o Upload do seu programa para as nuvens, forneça o seu e-mail e sua senha para autenticação:
8 – Pronto! Sua App já esta nas nuvens. você pode testar chamando o endereço de sua aplicação no navegador, o endereço é formado pelo AppId mais o caminho do SandBox do Google:
Exemplo:
Neste programa criamos uma aplicação nas nuvens utilizando a linguagem de programação Python e a tecnologia Cloud dos servidores do Google.
Se você tem uma conta no Google você pode ver esta aplicação clicando aqui: http://daengineapp01.appspot.com/
Python
main.py
#!/usr/bin/env python # # Copyright 2007 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # import webapp2 class MainHandler(webapp2.RequestHandler): def get(self): self.response.write('<h1>Desenvolvimento Aberto</h1>' + \ '</br>Hello world!</br>' + \ '<p><strong>' + \ '<font size="3" color="#8A2BE2">Google App Engine!</font>' + \ '</p></strong>') app = webapp2.WSGIApplication([ ('/', MainHandler) ], debug=True)