Webを支える技術 第16章 書き込み可能なWebサービスの設計 その2
- バッチ処理
- トランザクションをRESTfulに
- 排他制御
- 複数のクライアントが同じリソースにアクセスするのを防ぐ
- 悲観的ロック
- 楽観的ロック
- 条件付きPUTで「Conflict が起きた時だけそれを検出して再試行を促す」というやりかた
- If-Modified-Since, If-Unmodified-Scince, If-Match, If-None-Match などのヘッダで更新があった時に失敗させる
- 競合したら 412 Precondition Failed を返す
- 設計のコツ
- KISS (Keep It Simple, Stupid)
- 困ったらリソースで解決。新しいメソッドが欲しいなぁ→それを表現するリソースを導入してみる
- POST の活用を躊躇わない。本当に必要なら
第16章はこれで終わりです。