Flex/AIR×GAE/J開発tips
-
Upload
kazunori-sato -
Category
Technology
-
view
3.348 -
download
3
description
Transcript of Flex/AIR×GAE/J開発tips
Flex/AIR×GAE/J開発 tips
スティルハウス佐藤一憲
自己紹介
• スティルハウス 佐藤一憲– http://www.sth.co.jp/– Adobe Flex/AIR、 Rails、 Java開発
• AIRによる大容量ファイル転送サービス• AIRによるコラボレーションツール
–テクニカルライティング• ペンネーム吉川和巳• @ITや ITproなど
–セミナー講師• Adobe認定 AIRインストラクター(m-
school)
アジェンダ
• Flex/AIR+GAE/J事例• GAE/Jはここがすごい• Flex/AIR+GAE/Jの開発 tips
Flex/AIR+GAE/J事例デモ
ご都合 .com
• ご都合 .com– 予定共有ツール– 会議・飲み会に– 無償・登録不要
• 特徴– Flexクライアント
– BlazeDS通信– GAE/Jサーバ– 開発期間 5日
GAE/Jはここがすごい!
GAE/Jとは
• Google App Engine for Java–自分のアプリを Googleインフラで運用
–クラウドコンピューティングサービス
• GAE/Jのすごいところ–無償で使える– Bigtableが簡単に使える–サーバ構築不要、デプロイ簡単
無償で使える
• 無償で使える無償提供分 有償提供分の単価
ストレージ容量 1GB $0.005/ 1GB×1日
ネットワーク帯域(上り) 10GB/1 日 $0.10/ 1GB
ネットワーク帯域(下り) 10GB/1 日 $0.12/ 1GB
CPU時間 6.5時間/1 日 $0.10/1 時間
メール受信件数 2000件/1 日 $0.0001/1 件
400万件で月額 $4!
Bigtableが簡単に使える
• Bigtableって?– Googleの「虎の子」の巨大分散 DB
• Google検索、 YouTube、Map、 Analytics
• RDBではなく、 key-value型データストア• 鬼のようなスケーラビリティと可用性
– 自分でつくると数千万円くらいかかるよ
• Bigtableがタダで使えると…–大規模サービスでも苦労しなさそう–キャンペーンサイトとか最適
• 短期間だけどメディアで紹介、等
サーバ構築不要、デプロイ簡単• GAE/Jの実行環境
– Amazon EC2のような VMではない– JBoss/Tomcatのような実行環境
サーバ構築不要、デプロイ簡単• GAE/Jの開発
– Eclipseプラグインでローカル開発–クリック 1つでデプロイ
• メリットとデメリット–サーバー構築不要、 LL感覚でデプロイ
–でも「サンドボックス」の制約あり
Flex/AIR+GAE/Jの開発 tips
BlazeDSと GAE/J
• GAE/Jでも AMF通信したい– RemoteObjectはラク
• GAE/Jに BlazeDSを載せる– blazeds.warの中身をWEB-INFに配置
– でもこのままではエラーがでます
BlazeDSを動かすには…
• Martin氏のブログを見よ!– http://martinzoldano.blogspot.com/2009/04/
appengine-adobe-blazeds-fix.html– Martinさんありがとう!!
• BlazeDSソースのビルドが必要– まずは BlazeDSをビルドする環境を用意
• 要点– JMX APIの管理機能はオフに– AbstractAmfInput.javaを修正– BaseHTTPEndpoint.javaを修正
• Adobe ADCにも記事掲載
Smalltableとは
• Bigtableに足りない点– RDBじゃないので使いにくい
• やっぱり joinしたい… LIKEも欲しい…
• Smalltableとは–リアルタイム DB同期フレームワーク–クライアント側 SQLiteと Bigtableを同期
• AIRは実装済み• Ajax、 iPhoneもやりたい
Smalltableのメリット
• Bigtable+ Smalltableのメリット–クライアント側では SQLを使える
• AIR/Ajax/iPhoneの違いを ORMで吸収• Bigtableはデータストアに徹する
–オフライン対応• ローカル DB紛失時もサーバでバックアップ
–バックグラウンドでリアルタイム同期• サーバレスポンスを待つ必要なし• Wordや Excelの使い勝手+オンラインアプリの即時性
そのほかの tips
• レガシーデータの移行は大変!– 2週間くらいかかった。専用ツール要
• いろいろ制約あり– ACID保証は苦手–なんでも 30秒以内に終わらせよ
• Task Queueはすごい– MapReduce 的並列処理が可能
ありがとうございました