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 が簡単に使える サーバ構築不要、デプロイ簡単
無償で使える 無償で使える 400 万件で 月額 $4 ! $0.0001 / 1 件 2000 件/ 1 日 メール受信件数 $0.10 / 1 時間 6.5 時間/ 1 日 CPU 時間 $0.12 / 1GB 10GB / 1 日 ネットワーク帯域(下り) $0.10 / 1GB 10GB / 1 日 ネットワーク帯域(上り) $0.005 / 1GB×1 日 1GB ストレージ容量 有償提供分の単価 無償提供分
Bigtable が簡単に使える Bigtable って? Google の「虎の子」の巨大分散 DB Google 検索、 YouTube 、 Map 、 Analytics RDB ではなく、 key-value 型データストア 鬼のような スケーラビリティと可用性 自分でつくると数千万円くらいかかるよ Bigtable がタダで使えると… 大規模サービスでも苦労しなさそう キャンペーンサイト とか最適 短期間だけどメディアで紹介、等
Bigtable のスケーラビリティ ホワイトハウス“ Open For Questions”
サーバ構築不要、デプロイ簡単 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 的並列処理が可能
ありがとうございました

Flex/AIR×GAE/J 開発tips

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