フォト
無料ブログはココログ

Amazon

  • おすすめ

Ads by Google


« 【感想】世界一受けたい授業(2009/06/20) | トップページ | 睡眠不足 »

2009/06/21

【検証】Google App Engineを使ってみる

以前から触ってみたかった、Google App Engineを試してみた。
まず、最初に下記のページに記載されていることをそのまま試してみることにした。

Part1 Google App Engineの基礎知識

大きく分けて以下の作業が必要そうだ。

1.開発言語であるPythonをダウンロード&インストール
2.Googleアカウントと認証コードの取得
3.Google App Engine SDKのダウンロード&インストール
4.テスト環境(localhost)で稼働確認、その後、本番(googleのサーバ)へのアップロード

1~3はリンク先のページにも詳しく書いてあるので、特に記載はしない。

【特記メモ】

  • 基本的には上記2でアプリケーション名(世界で一意となる名前)を登録しておき、その名前のアプリケーションしか登録できないようになっている。
  • プログラムを実行するには、app.yamlという設定ファイルと各Pythonのプログラムを準備する必要がある。
    ※ここでは、アプリケーション名:shin-cloudとして登録している
4については、以下に手順を記録しておこうと思う。


【テスト実行の方法】

(1)任意の場所に、shin-cloudフォルダを作成し、app.yamlファイルと各プログラム準備する。

app.yamlファイル記述例
application: shin-cloud
version: 1
runtime: python
api_version: 1

handlers:
- url: /.*
  script: welcome.py
  • application:GAEの認証コードを取得した際に、入力したアプリケーションを認識する名前を入れる必要がある
  • url、script:どのURLをどのscriptで扱うかを設定する。
    (上の場合は、すべてのURLはwelcome.pyで処理される)
    ※urlごとに対応するscriptを指定可能
welcome.pyは、ひとまず以下のプログラムとした。
※pythonの知識ゼロのため、とりあえず標準出力。

(Content-Type指定とそのあとの空改行がないと、
 なぜか、サーバにアップロードしたときに表示されなかったので注意。)

print "Content-Type: text/plain"
print ""
print "Welcome to Shin's Page!"

(2)コマンドプロンプトを起動し、上記ディレクトリの上位ディレクトリに移動し、次のコマンドを起動
  dev_appserver.py アプリケーション名(Ex.dev_appserver.py shin-cloud
(3)10行程度のメッセージ(最後に以下のように起動したメッセージが出る。)

INFO     2009-06-21 08:20:59,424 dev_appserver_main.py] Running application shin
-cloud on port 8080: http://localhost:8080

   ※初回、最初に1行Updateをcheckするか?のようなメッセージがでるので、y/nを入力
(4)ブラウザにて、http://localhost:8080/にアクセスする。
383412663169f0eca86_3
 












正しくメッセージが表示された。


【googleのサーバへのアップロード方法】

(1)上記、テスト実行と同じディレクトリにて、次のコマンドを入力

  appcfg.py update アプリケーション名(Ex.appcfg.py update shin-cloud
(2)googleアカウント登録のメールアドレス、及び、パスワードが求められるので入力する。
  その後、以下のメッセージが表示され、コマンド入力受け入れ態勢に戻る。
Scanning files on local disk.
Initiating update.
Email: XXXXXXXX@gmail.com
Password for
XXXXXXXX@gmail.com:
Cloning 1 application file.
Uploading 1 files.
Deploying new version.
Checking if new version is ready to serve.
Will check again in 1 seconds.
Checking if new version is ready to serve.
Closing update: new version is ready to start serving.
Uploading index definitions.
(3)http://アプリケーション名.appspot.com/にアクセスする。(Ex.http://shin-cloud.appspot.com/ 
3834126631708acf135













アップロードしたページが表示された。

今日のまとめ

若干、localのデバッグ環境と、本番(google)環境で動作が違うところがあったので、
ちょっと悩んだが、提供されているgoogleのリファレンス(Hello, World!)ページを見ることで解決できた。

デバッグ環境で動くが、本番で動かなかったソース例。

print "Welcome to Shin's Page!"

動くように修正したソース例。

print "Content-Type: text/plain"
print ""
print "Welcome to Shin's Page!"

次は、javaに行くか、このままpythonで進めるか悩んだが、
せっかく、いい機会なので、このままpythonで進めることにしたいと思う。
次はwebappフレームワークに手をつけてみたいと思う。

使い勝手はかなりよさそうなので、今後が楽しみになってきた。

« 【感想】世界一受けたい授業(2009/06/20) | トップページ | 睡眠不足 »

クラウド」カテゴリの記事

プログラミング」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/210116/45409722

この記事へのトラックバック一覧です: 【検証】Google App Engineを使ってみる:

« 【感想】世界一受けたい授業(2009/06/20) | トップページ | 睡眠不足 »