Easy-to-use sync locks for distributed systems
Lockable lets you synchronize multi-process workloads via easy to acquire locks.
Acquire synchronization locks from anywhere via simple https requests:
$ curl https://api.lockable.dev/v1/acquire/2bf94941-f79 { "response":
true
}
Sign up to try it right now, free of charge.
While you hold the lock, nobody else will be able to acquire it:
$ curl https://api.lockable.dev/v1/acquire/2bf94941-f79 { "response":
false
}
Locks can be released, or eventually expire if unused.
Works everywhere
AWS, GCP, Azure, on-prem, even on your laptop. Processes do not need to share access to any common resources - they only need to be able to make https requests to api.lockable.dev
Easy to use
Quickly start developing without worrying about setting up and maintaining a new database or a service like Consul.
Compatible with all programming languages
Since lockable runs as a service, it is language agnostic. You can use it from Python, Java, C, Javascript, Go, even bash!
The official Python library makes using lockable
a breeze
lockable
a breezeInstall the library:
$ pip install lockable.dev
Followed by:
from lockable import Lock with Lock(‘my_lock_name’): #do something
How it works
1.
Choose a lock name and attempt to acquire it
. If the lock is available you will acquire it. Otherwise, you can retry after a timeout. By default, locks live in the same public namespace, so make sure you pick a hard-to-guess name to avoid collisions. Private namespaces are available for Business tier users.
$ curl https://api.lockable.dev/v1/ acquire/<your_lock_name> { "response": true }
2.
Periodically send a heartbeat
to let lockable.dev know you still want to keep the lock.$ curl https://api.lockable.dev/v1/ heartbeat/<your_lock_name> { "response": true }
3.
When you're done, release the lock
.$ curl https://api.lockable.dev/v1/ release/<your_lock_name>
Easy to use, worry-free distributed locking
Hobbyist
$Free
- Unlimitednumber of locks in the public namespace
- Locks come with a lease of 60 seconds
Business
$49/month
- Unlimitednumber of locks in your own, private namespace
- Locks come with a flexible lease of up to 24 hours
- Priority support