![]() | This article has multiple issues. Please help
improve it or discuss these issues on the
talk page. (
Learn how and when to remove these template messages)
|
In computer science, a Lease is a contract that gives its holder specified rights to some resource for a limited period. Because it is time-limited, a lease is an alternative to a lock for resource serialization.
A traditional resource lock is granted until it is explicitly released by the locking client process. Reasons why a lock might not be released include:
Any of these could end the availability of an important reusable resource until the system is reset. By contract, a lease is valid for a limited period, after which it automatically expires, making the resource available for reallocation by a new client.
The term 'lease' was applied to this concept in a 1989 paper by Cary G. Gray and David R. Cheriton, [1] but similar concepts (expiring tokens [2] and breakable locks with timeouts [3]) had been used in prior systems.
Leases are commonly used in distributed systems for applications ranging from DHCP address allocation to file locking, but they are not (by themselves) a complete solution:
![]() | This article has multiple issues. Please help
improve it or discuss these issues on the
talk page. (
Learn how and when to remove these template messages)
|
In computer science, a Lease is a contract that gives its holder specified rights to some resource for a limited period. Because it is time-limited, a lease is an alternative to a lock for resource serialization.
A traditional resource lock is granted until it is explicitly released by the locking client process. Reasons why a lock might not be released include:
Any of these could end the availability of an important reusable resource until the system is reset. By contract, a lease is valid for a limited period, after which it automatically expires, making the resource available for reallocation by a new client.
The term 'lease' was applied to this concept in a 1989 paper by Cary G. Gray and David R. Cheriton, [1] but similar concepts (expiring tokens [2] and breakable locks with timeouts [3]) had been used in prior systems.
Leases are commonly used in distributed systems for applications ranging from DHCP address allocation to file locking, but they are not (by themselves) a complete solution: