Ukey是一个生成唯一ID的PHP扩展模块, 其安装Twitter的 Snowflake算法来生成ID, 所以效率非常高, 而且唯一性非常好.
Ukey的安装非常简单:
$ wget https://github.com/liexusong/ukey/archive/master.zip $ unzip master.zip $ cd ./ukey-master $ phpize $ ./configure $ make $ sudo make install
Ukey提供3个有用的函数:
- ukey_next_id() 用于生成唯一ID
- ukey_to_timestamp(ID) 用于将ID转换成时间戳
- ukey_to_machine(ID) 用于将ID转换成机器信息
Ukey模块的配置项:
[ukey] ukey.datacenter = integer ukey.worker = integer ukey.twepoch = uint64
- datacenter配置项是一个整数, 用于设置数据中心;
- worker配置项是一个整数, 用于设置数据中心的机器序号;
- twepoch配置项是一个64位的整数, 用于设置时间戳基数, 此值越大, 生成的唯一ID越小.
引用来自“matthewrod”的评论
不错,但是习惯用mysql uuid()
引用来自“liexusong”的评论
引用来自“冯云森”的评论
GUID 吗?
引用来自“yak”的评论
怎么样实现自增呢?
引用来自“liexusong”的评论
引用来自“matthewrod”的评论
不错,但是习惯用mysql uuid()
引用来自“matthewrod”的评论
不错,但是习惯用mysql uuid()
引用来自“冯云森”的评论
GUID 吗?