Tokyo GTUG Night #4に参加してきた

Kay Framework update

  • Takashi Matsuo
  • App Engine専用 Web Framework
  • 動機
    • ジェネラルなFrameworkは無駄が多いので、専用のFrameworkを開発した
    • clear_datastore actionの追加
    • SecureCookieSessionStoreを追加
    • 遅延評価のためのViewを文字列として定義できるようになった
    • appidから別のappipへデータを簡単に移行できるようになった
  • http://blog.shehas.net/
  • http://code.google.com/p/theokayblog/
    • OpenSocialな話のはずだったのに・・・なぜかAppEngineを用いたFrameWorkのデモになってる

OpenSocialアーキテクチャ

OpenSocialアプリとは?
仕様
手順
  1. XML file
    • meta
    • content(View)
  2. サーバにアップロード
    • Web Server
    • AppEngine
    • Dropbox (public folder)
  3. OpenSocial Containerに登録
    • fin
ガジェットはどうやって表示されているのか
  1. XSSがある:XSSをさける4つの方法
    1. Domainをわける
    2. 安全性の確認されたJavaScriptのみ許可する
    3. JavaScriptの危険な部分のみ無力化する(Caja)
    4. iFrameで表示する→これ
  2. ShindigでのGadget表示方法
  3. ガジェットが表示されるまで
    1. ブラウザからSNSを表示する
    2. ガジェットに関する情報を収集
  4. +
    1. iframeにガジェットをレンダリング
  • 認証Tokenが肝
  1. 外部サーバと通信する
    1. Gadgetsでrequireを使って通信する
      • Shindigをプロキシとして使って行う
    2. Signed Request
      1. OAuth Consumer Request, 2 Legged OAuth
OAuth
  • 一般的なOAuth
  • OpenSocialにおけるOAuth Proxy
    • Browser (User) => Gadget => Shindig (Consumer) => Service Provider
最後に
  • 現在日本のOpenSocialコンテナはgoo, mixi, リクルート, DeNA
  • Google searchなどでも使える

mixiのオープン化とアプリ開発環境の紹介

  • ミクシィ 田中洋一郎
  • プラットフォーム開発チームリーダー
補足
  • RESTfulは一番ホットな話題かも
  • サン牧のセキュリティ問題があるけど、解決難しい!
  • ブラウザを通さずにコンテナとバックエンドがコミュニケーションして情報を集めるとか、とか、
  • なのでRESTful重要!
mixiのオープン化
  • mixiのリアルな人間関係のグラフ
  • 開発者にソーシャルグラフの解放
  • プラットフォームの中身
    1. mixiアプリ
    2. mixi Connect
      • mixiの外のWebサービスやデバイス等と連携できる仕組み OAuth認証
    3. mixi OpenID
  • 常に新鮮で継続的なユーザ体験 mixiアプリ
  • ランキング 9/8 -> 11/10
    • 公開アプリ数 231 -> 581
    • 1位:サンシャイン牧場 2,558,132
    • 2位:マイミク通信簿 2,310,030
    • 3位:能力大学
  • バイラルの仕掛け
    • Invite
    • アクティビティフィード
アーキテクチャ
エコ
  • Shindigのバージョンが古いために、2度ほど落ちてる
    • Shindigのバグ(外部との通信がcloseされていなかった)
    • Shindigが安定した後、APIサーバが重くなった
      • パーミションチェックが相当あるので、DBアクセスとか確認とかをPerlでやってたら重くなった
    • Serverをとりあえず増やした
      • 根本解決ではないので、APIで一行一行どこが呼ばれているのか確認していき、チューニングした→元の台数に戻せた
  • mixiアプリが負荷に耐えられなく落ちていった
    • mixi Platformが軽くなる
    • mixiアプリへの利用が軽くなる
    • バックエンドサーバへの要求が増える
    • mixiアプリが動かなくなる
    • 特にmobileで顕著に落ちる!(10秒以内にWebサーバはmixi Platformサーバに返さないといけない)
  • エコ推奨中
    • APIの取得件数を減らしてもらったり、使わないAPIを取得しないようにしてもらう
    • バックエンドの強化(AppEngineとかAmazon EC2, S3)
    • mixi = mod_perl + memcached + MySQL
OSDE (OpenSocial Developmental Environment)
  • リアルなSNS上での開発・デバッグできますか?
    • 友達に迷惑かけませんか?
    • あなたは「友達」になれますか?
    • いちいちWebサーバにアップロードしますか?
    • SNSがメンテのときには?
  • eclipseのPlugin!?
  • 開発者募集中 結構マジで募集してるwww

CREYLEアプリ プラットフォーム 開発者限定先行βリリース

CREYLEにおけるOpenSocial対応
  • 0.9対応
  • OAuthでの外部サーバ通信は未対応
独自API
  • xSites
  • xEntries
  • xCommernts
次世代API osapi
構成

マスクドロイドからの告知 11/21