WOMeeting200508

  • 日時:8/27(土) 13:30〜17:30(開場13:00)
  • 場所:スペース・ソルバ株式会社
    • 東京都中央区日本橋大伝馬町11-8 フジスタービルディング日本橋3F
    • TEL: (03)5643-7711

プログラム

第一部

第二部

Chap 9 Copying Enterprise Objects - 読書会「Practical WebObjects

質問

  • 結局、プライマリ・キー、サロゲート・キーをコピーしてはいけない問題はどうやって解決するの?
    • プライマリ・キーは、属性値をコピーせずにEOFの自動採番機能を利用することにすればOK。
    • サロゲート・キーは、コピー戦略のカスタマイズ例と同じように、採番ロジックを実装して、属性コピー後に採番した値を設定すればよい。

Lock'N Role WebObjects

  • WOApplication.setAllowsConcurrentRequestHandling?
  • Request-Responseループ
    • 1回のループでDB操作を完結すれば、ほとんどの場合は問題ないのでは
  • NSLocking
    • Objective-CのFoundationフレームワークを引きずっている
    • Javaのスレッド管理機構使えよ
    • スレッドのロックの結果としてDB接続が制限される
      • SQL発行したりしてDBを操作するのではないので、外部の環境からは問題なくDBに接続できる
  • EOFのロック戦略
    • 名前がよくない、同期や整合性管理などにすべき
    • オプティミスティックロック使えね
      • カレントアプリケーションインスタンス外からの変更をチェックする
      • デスクトップアプリケーション向けの仕様を引きずったまま
    • ペシミスティックロック使えね
      • ACIDに問題あり
      • 競合時の反応はデータべース次第
      • どうせ誰も使わない
    • オンデマンドロック使えね
  • 自前でEOFロックを実装する?
    • EODatabaseContext?のデリゲートを使えばできることはできる
    • リレーションシップはどうするのか
  • DB処理を行うと、EOFはとにかくオブジェクトを同期しようとする
    • フェッチ後まったく触ってないオブジェクトの内容がいつの間にか最新のものになってたり
    • 編集中のオブジェクトでも同期される。その場合、変更したデータは同期後にマージされる
    • フェッチタイムスタンプによっては同期されない
  • ロックについてのドキュメントは?
    • EOFデベロッパガイドに数ページ、あとAPIリファレンスにちらほら
    • ロックという用語に複数の定義があって、ドキュメントがわかりにくい
  • 他フレームワークではどんな同時実行制御がされているのか
    • 真面目に考えている人はほとんどいないらしい
    • 不特定多数が利用するWebアプリケーションで同時実行制御を厳密に行うのは難しい
    • CGIKit (CVS HEAD) のRequest-ResponseループはWOと同じように制御している

添付ファイル: fileLockNRoleWebObjects.pdf 1158件 [詳細] filePW09_CopyingEnterpirseObjects.pdf 1133件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2005-10-25 (火) 01:03:10 (1774d)