BPStudy#40 に参加しました Google Appengine 1.4.0¶
BPStudy#40 に参加してきました。 いつも通り走り書きメモです。
今回のネタは"Google Appengine 1.4.0"。
第一部「Google App Engine1.4.0概説」¶
発表: Ian M Lewis (BeProud): @IanMLewis
資料: http://www.slideshare.net/IanMLewis/bpstudy-40-google-appengine-140
発表からひろったポイント & 清水川メモ¶
- 今回の1.4.0はけっこう大きなリリース。
channel API
ライブラリ構成が変わって古いのはdeprecated扱い
Cronとタスクキュー時間制限が30秒から10分へ
タスクキューのデータがQuotaに含まれる
- ChannelAPI
サーバーからクライアントへデータをpushする
データが大容量だときついかも知れない
- 使うための3つのステップ
サーバーで
Channel ID
を生成してクライアントに渡すクライアントでそのIDを使って
socket
に接続するサーバーからchannelにメッセージを送信。クライアントで受け取る
- 繋ぐためのサンプルコード
データpushはJSONがお勧め(楽なので)
- 質疑
- channelは何個まで開けるのか?
何個でも大丈夫なはず
channelはブラウザ毎でも全部で1つでもよい
ユーザー毎に別の作業をするページならユーザー毎に開く
1つのページで共同作業する場合は全体で1つ開く
- channelのタイムアウトは?
2時間くらい
ブラウザ側で切れてたらつなぎ直す(自動?要実装)
- Taskキュー
- 質疑
課金は1.4から?
DataStoreのquotaに含むので普通のデータと合計でquota扱い
DataStoreが一杯で課金設定してなければTaskキューも積めない
- Taskキューの処理は即時処理サーバーと遅いサーバーとで処理される
長いTaskは遅いサーバーで。
- どのあたりが境界線?
「そうなんですよねー。よく分からないんです」@IanMLewis
第二部「Google App Engine1.4.0 ソースコードリーディング(python編)」¶
発表: @tagomoris
発表からひろったポイント & 清水川メモ¶
キャメルケース
同じ名前のメソッドがあちこちのモジュールにある
SDKのインデントが2
- Google Python Style Guide は1度読むと良いと思いますよ
本家: http://google-styleguide.googlecode.com/svn/trunk/pyguide.html
インデントは4を推奨
from xxx.xxx import * はNG
- SDKには不自然な空行がときどきある
リリース時に削除されているんじゃないかと思うが中の人じゃないと分からないだろう
以降、コードリーティング。