ゲットしたノウハウ
- 楽観的排他制御にはBigTableの排他制御+独自のチェック(またはJDOのVersion管理+自前の更新前のバージョンチェック)を使う
- JDOを使う場合は自動でTransactionを開始する機能が邪魔なので止めておく
- PersistenceManagerを開くタイミング、閉じるタイミング
- Low-Level APIのパラレルGETは存在しないKeyをパラメタに渡してもエラーにならない
- スキーマのバージョンをEntityに持たせておくとマイグレーションが必要な場合に便利
感想
実はひがさんも私も予定した事を全ては伝えきれなかったのですが、それでも問題なかったと思います。発表者の発表の合間合間に会場の皆さんを交えた色々な議論が交わされた分だけ、ひがさんも私も予定より押してしまった要因なのですが、個人的にこの進み方は良かったと感じました。おかげさまでより濃い内容になったんだと思います。appengine java nightの次回以降の発表者の方は、資料は普段の半分のボリュームくらいで見積もるのがいいかもしれませんw
懇親会も含めて、とにかく充実していたなぁという感想で、今後も定期的に継続してやっていけるととても面白いと思います。自分も協力できるトコを積極的に協力していこうと思います。楽しみです。
shin1ogawaの発表資料
説明無しでスライドだけだとちょっと伝わらんなぁと感じますが、とりあえずアップロードしておきますた。会場では発表できなかった点について補足しておきます。
「親キー指定のQueryでJDOのようにOneToManyを持ったBeanを構築する」話は、仕組みをわかった人なら納得できるし、JDOの中の動きも垣間見えると思います(EntityGroupはKeyだけでry)。
テストの話や「ApiProxy, Delegate」の話を見てみると、例えば最近どなたかが話していた「UserServiceへのアクセスはコストが低い」という理由も納得できると思います(UserServiceだけは他のサービスと違って外にアクセス(makeSyncCall)する必要がない)。
「Delegate#makeSyncCall()」の話を見てみると、アレコレ妄想が膨らんで便利なツールを作りたくなると思います。
感謝
色々世話をしてくださったGoogleの横田さん、サイオスの松尾さん、appengine java night開催に関して色々と仕切ってくださったスティルハウス佐藤さん、楠本さん、貴重なお話をしてくださったひがさん、皆様ありがとうございました!マクブクを貸してくれた嫁ちゃんもありがとう!
0 件のコメント:
コメントを投稿