【文件属性】:
文件名称:spindle:基于Spanner的分布式锁定库
文件大小:28KB
文件格式:ZIP
更新时间:2021-03-21 11:55:42
distributed-lock spanner distributed-locking Go
主轴
基于的分布式锁定库。它使用Spanner对的支持和来实现其锁定机制。
用法
目前,需要使用以下DDL预先创建表( locktable只是一个示例):
CREATE TABLE locktable (
name STRING(MAX) NOT NULL ,
heartbeat TIMESTAMP OPTIONS (allow_commit_timestamp = true),
token TIMESTAMP OPTIONS (allow_commit_timestamp = true),
) PRIMARY KEY (name)
该库不使用通常的同步“锁定”,“执行受保护的工作”,“解锁”序列。为此,您可以签出随附的包。相反,在实例化锁定对象之后,您将调用Run(...)函数,该函数将尝试以固定的时间间隔(租用持续时间)获取命名的锁,直到被取消。如果成功获取了
【文件预览】:
spindle-main
----.gitignore(292B)
----go.mod(605B)
----lock()
--------README.md(538B)
--------lock.go(2KB)
----spindle.go(9KB)
----LICENSE(11KB)
----go.sum(45KB)
----.github()
--------workflows()
----examples()
--------simple()
----README.md(3KB)