- 2010年8月30日 12:00 PM
- Python

最近、とても気になっていることがあります。
それが”Google App Engine + Python”です。
元々、Pythonには興味がありました。
オライリーのPython入門も読破しました。
10日でおぼえる Python 入門教室も5日まではやりました。
しかし、そこで終わりました…。
CakePHPという慣れ親しんだ言語とフレームワークがあったので、そちらに走ってしまいました。
ですが、私はPythonistaに憧れるPHPerです。
ここいらで一つ、重い腰を挙げてPythonの勉強を始めることにしました。
Pythonを勉強する一つの強い理由付けとして、”Google App Engine“の存在があります。
お知らせメールの運営を始めてから、サーバの管理には悩まされっぱなしです。
サーバ管理には多くの時間と手間が掛かります。
管理と運営は基本的に”事前準備”が大切です。完全に裏方の仕事です。
正直、サーバを触るのは好きだけど、管理はしたくない!んです。
では、サーバ管理を放棄するために何をすれば良いか?
その答えの一つが”Google App Engine”でした。
ここでは、@tfmagicianがGoogle App Engine上でPythonを勉強するための記事をまとめます。
皆さんがGAE上でPythonを勉強するときの参考にしてください。
Pythonを勉強する
個人的には最もノウハウが蓄積されているであろうDjangoをフレームワークとして使いたい。
そこで、Djangoのチュートリアルを絡め、Pythonを勉強するためのリンクと書籍を集めてみました。
- スタート ガイド: Python
- Google App Engine チュートリアル集
- Djangoチュートリアル(前編)
- Djangoチュートリアル(後編)
- Google App Engine上でLL+RDBアプリを作ろう
- Learn Python The Hard Way
Pythonモジュールのチュートリアルです。英語ですが、かなり詳細に書かれているようです。これもPythonの勉強に。
- これは実用的。Google App Engineを使ったブログエンジン「Potlatch Blog」
最後にGoogle App Engine上で動いているプログラムのソースを読みましょう。Google App Engineで動くブログシステムです。
まずは公式サイトでしょう。しっかり日本語訳されて載っています。かなりしっかりとしたチュートリアルのようです。
JavaとPythonのチュートリアルが集められています。さらにチュートリアルをやりたい場合はここから探すと良いでしょう。
Djangoのチュートリアルです。このままではGoogle App Engine上で動かすことが出来ないと思いますが、Djangoの勉強のためにどうぞ。
上記の後編です。
Google App EngineはBig Tableと呼ばれる独自のKey-Value Storeのデータベースが採用されています。それを慣れ親しんだリレーショナル・データベースとして使用するためのチュートリアルです。Key-Value Storeに慣れるのが良いのでしょうが、参考に。
![]() |
Google App Engine クラウドアプリケーション開発講座
|
![]() |
オープンソース徹底活用 Slim3 on Google App Engine for Java
|
この本だけJavaのフレームワークSlim3に関するものです。ただ、この本が最もGoogle App EngineのBig Tableについて詳しく述べられているようです。
![]() |
Programming Google App Engine
|
![]() |
Google App Engine 実践リファレンス
|
こう見ると、大々的にGoogle App Engine + Pythonについて触れられている書籍がありませんね。
特に日本ではPythonよりもJavaのほうが知名度も高く、使っている人が多いために、出版社の意向でこういった傾向になっていくのでしょうか。
Google App Engine上で動かすフレームワークを選ぶ
- 【特集】Google App Engineで開発するためのフレームワーク × 16 + α
- webapp
- Django
- Kay
- CherryPy
- Pylons
- Flask
Google App Engine上で動くJavaとPythonのフレームワークが特集されています。
Googleが用意したGoogle App Engine用のフレームワークです。公式サイトにチュートリアルがあります。
Pythonで最も使われているであろうフレームワークです。日本語で書かれた書籍が数冊出ています。
Google App Engine向けの日本製フレームワークです。これも検索するといくつか、記事を見かけました。日本語のドキュメントがあるので始めやすいのではないでしょうか。またGoogle App Engineに最適化されているのも魅力です。
“Pythonらしく”を目標に作られたフレームワークです。
比較的新しいフレームワークのようです。Ruby on Railsに強い影響を受けています。CakePHPもRoRに強い影響を受けているので、Bakerには取っ付きやすいかもしれませんね。余談ですがDropBoxのサイトもこのフレームワークで作られているそうです。
Pythonのマイクロフレームワークです。Pythonのマイクロフレームワーク「Flask」ならApp EngineのTwitter Botが15行で書けるといった記事があがっていました。
まだまだフレームワークは存在します。どれを使うか、迷いますね。
Djangoで始めようと思ったのですが、Pylonsも気になっています。
Google App Engineの運用を学ぶ
Amazon EC2との違いやGoogle App Engineの事例、Cronの使用方法などをまとめたサイトです。
- Amazon ec2とGoogle App Engineの違いを私なりにまとめてみた
- Amazon EC2とGoogle App Engineの比較(それぞれの特徴をまとめてみる)
- 事例で見るGoogle App Engineの魅力
- ここが大変だよBigTableとGoogle App Engine
- GAE/J TaskQueue メモ
- Google App Engine(GAE)でcron動かすやり方をゆとり向けにまとめてみた
Google App EngineとAmazon EC2の比較を自分の経験から書かれています。運営する上での両者の問題点がわかりやすくまとめてあります。
こちらも同様にGoogle App EngineとAmazon EC2の違いをまとめられています。上記の記事を合わせて読むと、Google App EngineとAmazon EC2の理解が深まりそうです。
PDFファイルですが、Google App Engineを使った事例がまとめられています。
BogTableの特性についてまとめられています。ここを読んでから設計を始めれば、データ周りでの躓きを減らせるかもしれません。
Google App Engine上でCronを動かすためのまとめです。Google App Engine上で走るアプリケーションには動作時間の制限があります。これを考慮したCron用のプログラムを書くときの参考になります。
同様にGoogle App Engine上でCronを動かすまとめです。チュートリアル形式になっているので大変わかりやすい記事です。
Google App Engine上の料金体系を知る
Google App Engine上でアプリケーションを作るときに気になるのが、料金体系。
わかりやすく比較しているサイトをピックアップ。
- Amazon EC2とGoogle App Engineのコスト比較
- Google App Engine/競合クラウドサービスとの比較/各料金体系
- Google App Engineの料金体系が面白い
サービスの登録ユーザ数を想定して、両者の料金体系の違いを説明されています。ここを読めば、Google App Engineでどの程度コストが掛かるかもわかると思います。
Google App Engine、Amazon EC2、Windows Azureの料金体系が図で説明されています。100万PVで月額4万円で済んだ、という事例が挙がっています。
Google App Engineの料金体系が詳細に解説されています。表面上だけでなく、リソースあたりのコストまでを踏まえてあります。本当のGoogle App Engineの料金体系を知りたいなら、ここを見てください。
ざっと、個人的にGoogle App Engine for Pythonを勉強するために必要な情報をまとめてみました。
これからGoogle App EngineでPythonを勉強する、という方はこれらの記事を見て、一緒に頑張りましょう。
あ、最後に注意ですが、自分でGoogle App Engineの情報をググるときは、”Google App Engine + キーワード“で検索したほうがたくさん見つかりますよ。
“GAE + キーワード“で始め、検索していて「なんだ、GAEって情報少ないんだなぁ。」と勘違いしていましたから(苦笑)
ちょっと一言
今日は早く起きて、もう一度寝てしまった...。あまり意味ないですね。寝た時間でGoogle App Engine勉強したかったなぁ。





