Loading article…
コンピュータ サイエンスにおいて、リースとは、保有者に特定のリソースに対する特定の権利を限られた期間与える契約です。リースは期間が限られているため、リソースのシリアル化におけるロックの代替手段となります。
モチベーション
従来のリソース ロックは、ロックしているクライアント プロセスによって明示的に解除されるまで許可されます。ロックが解除されない理由としては、次のようなものが挙げられます。
- リソースを解放する前にクライアントが失敗しました
- 別のリソースを割り当てようとしたときにクライアントがデッドロックしました
- クライアントが不当な期間ブロックまたは遅延された
- クライアントはおそらくバグのせいでリソースを解放しなかった
- リソースを解放する要求が失われました
- リソースマネージャが失敗したか、指定されたリソースの追跡を失いました
これらのいずれかにより、システムがリセットされるまで、重要な再利用可能なリソースが利用できなくなる可能性があります。契約により、リースは限られた期間有効で、その後は自動的に期限切れとなり、リソースは新しいクライアントによって再割り当て可能になります。
歴史
1989年のCary G. GrayとDavid R. Cheritonによる論文[1]では、この概念に「リース」という用語が使用されていましたが、同様の概念(期限切れのトークン[2]やタイムアウト付きの解除可能なロック[3])は以前のシステムでも使用されていました。
問題点
リースは、 DHCP アドレスの割り当てからファイルのロックに至るまでのさまざまなアプリケーションで分散システムでよく使用されますが、それだけでは完全なソリューションにはなりません。
- リースの有効期限をリース所有者に通知し、そのエージェントが引き続きリソースに依存しないようにする何らかの手段が必要です。多くの場合、これはすべてのリクエストにアクセス トークンを添付することを要求することで実現されます。アクセス トークンは、関連するリースの有効期限が切れると無効になります。
- リース所有者がリソースの操作を開始した後にリースが取り消された場合、取り消しによってリソースが危険にさらされた状態になる可能性があります。このような状況では、完了していない更新が影響を及ぼさないようにするために、アトミック トランザクションを使用するのが一般的です。
参考文献
- ^ Gray, Cary; David Cheriton (1989 年 12 月)。「リース: 分散ファイル キャッシュの一貫性を保つための効率的なフォールト トレラント メカニズム」。第 12 回 ACM オペレーティング システム原理シンポジウム議事録 - SOSP '89。第 23 巻。202 ~ 210 ページ。CiteSeerX 10.1.1.115.1696。doi : 10.1145 / 74850.74870。ISBN 978-0897913386. S2CID 1119226。
- ^ Burrows, M (1988 年 12 月)。「効率的なデータ共有」。テクニカル レポート #153、ケンブリッジ大学。
- ^ Stugis, H; Israel, J (1980 年 7 月). 「分散ファイルシステムの設計と使用に関する問題」.オペレーティングシステムレビュー. 14 (3): 55–69. doi :10.1145/850697.850705. S2CID 29903250.
