読者です 読者をやめる 読者になる 読者になる

ami_GS's diary

情報系大学院生の備忘録。ネットワークの勉強にハマっています。

Google App Engineの基本(過去サイトから)

Python Google App Engine

またしてもプロフェッショナルPythonから

今回はGAEについてちょっと触ってみた。

 
GAEはPaaS(Platform as a Service)で、アプリケーションを動作させる土台を提供している。
環境に適したアプリケーションを作る必要があるものの、環境構築の手間が少ない分サーバサイドの構築に壁を感じている人には良いかもしれない?
 
利用実績も色々とあり、
オバマ大統領への質問投稿・投票サイト(毎秒700リクエスト)
・ウィリアム王子の結婚式の公式サイト(毎秒30000アクセス)
と、多くの負荷に耐えられる物となっている。
 
Pythonの実行環境は、2.5,2.7をサポートしている。
ただし2014年1月以降は2.5でのアプリケーションを新規に作成できなくなるようだ。
 
動かすのに必要なのは
・App Engineのアカウント取得(省略)
SDKの入手(省略)
・プログラム作成
・デプロイ
となる
 
・プログラム作成
アプリケーション作成に最低限必要な物は、
デプロイしたいディレクトリ----app.yaml
                                                            |-helloworld.py
                                                            |-importしたい物
 
今回はhelloworldだけに焦点をあてると、
app.yaml

application: helloworld #アプリケーションID

version: 1

runtime: python27

api_version: 1

threadsafe: true

 

handlers:

- url: /.*

  script: helloworld.application  #ファイル名.アプリケーション関数名

helloworld.py
def application(environ, start_response):
    start_response("200 OK", [("Content-Type", "text/plain")])
    return "Hello World!"
これをディレクトリ直下へ。
app.yamlにあるscript:の先は、helloworld.py + application関数からきている。
 
・テスト
SDKgoogle_appengine)を用いて
$ google_appengine/dev_appserver.py "作成したディレクトリ"
これでブラウザから127.0.0.1にアクセスするとHello Worldが出力されるはず
 
・デプロイ
$ google_appengine/appcfg.py update "作成したディレクトリ"
これによりGoogleアカウントのユーザ名とパスワードを求められ、入力すればデプロイは完了。
”http://アプリケーションID.appspot.com/”にアクセスすれば動作確認ができる。