トップページ| サイトマップ|

クラウドについて

工事中、現在進行形

無料レンタルサーバーのようにGoogleの環境を使わせていただきませう。



その他、主要なクラウド環境

     Windows Azure

     Amazone EC2

TOP

App Engineを準備する

工事中、現在進行形

Googleサイトに、App Enginのアカウントを作る.

スタートガイドの1で、アカウント作成画面に移動。

GMailのユーザ、パスワードでログイン。

携帯のキャリアを選ぶ。

usernameを聞いてきますが、ここではメールのアカウントを入れます。

次のステップに移ると、ナンバーを入れろと言ってきますが、このナンバーは 先ほどの携帯のメールに送られてきたものを入れます。

ナンバーを入れて次に画面に移って、アカウント名とアプリケーション名を入れます。

これで、Googleサイト内に、あなたのアカウントが作成されます。

Googleの本番環境を使う前に、エミュレーターでアプリケーションテスト

エミュレーターには、Java版とPython版があります。

ちなみに、Google社の標準言語は、Java・C++・Pythonだそうな。

OpenCVとの絡みもあるので、ここでは、「Google App Engine for Python」を使うことにします。

Python 2.5.xをインストール。

下の、SDKインストール時に、Python2.5をダウンロードするボタンが出ますので、そこからダウンロードしてインストール。

Googleの環境をエミュレートする
     Google App Engine SDK

SDKをダウンロードしてインストールしてください。

Windiwsの場合、デフォルトのインストール場所は、
C:\Program Files\Google\google_appengine
です。

お約束の「HelloWorld」でテスト
Python用のスタートガイドはこちら
ただ、少し分かりにくいところもあるので、補足がてら説明します。

まずは、プロジェクト用のフォルダーを作ります。

App Engineをインストールした、C:\Program Files\Google\google_appengineに、「helloworld」という名前でフォルダー作成。

この中に、必要なファイルを2つ作ります。

helloworld.pyというPythonスクリプトファイルと、app.yamlという設定ファイルです。

内容は、上記スタートガイド参照

では、動作を確認します。まずは、SDKのLauncherを使わず、WindowsのDOSプロンプトを使います。

DOS窓を開いて、C:\Program Files\Google\google_appengineに移動。

>dev_appserver.py helloworld/

を実行。

以下のようになります。



App EngineのWebサーバーがポート8080でリッスンしている状態。

で、ブラウザーを開いて、http://localhost:8080にアクセス。

Hello World!が表示されたら成功。

フレームワークを使ってみる

App Engineで使えるフレームワークには以下のものがあります。

PHPならCakePHPなどが有名ですが、Pythonの場合、以下のようなものが使えるそうです。



Django
CherryPy(素のままでは動かないというレポートあり)
Pylons
web.py(素のままでは動かないというレポートあり)
webapp(App Enginに同梱)

まずは、簡単に動作を見てみるということで、webappを使ってみます。

先ほどのhelloworld.pyを書き直してみます。

Pythonのコードって感じです。

-------------------------------------------

from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app

class MainPage(webapp.RequestHandler):
    def get(self):
       self.response.headers['Content-Type'] = 'text/plain'
       self.response.out.write('Hello, webapp World!')

application = webapp.WSGIApplication(
             [('/', MainPage)],
             debug=True)
def main():
    run_wsgi_app(application)

if __name__ == "__main__":
    main()

-------------------------------------------

他のフレームワークを試してみます。

Googleにも公式ページがあって、手間もあまりかかりそうにない...ということで Djangoを使ってみます。

TOP