更多互联网新鲜资讯、工作奇淫技巧关注原创【飞鱼在浪屿】(日更新)
ksuid是一个高效,全面,经过测试的Go库,用于生成和解析一种称为KSUID的特定类型的全局唯一标识符。
ksuid是一个高效,全面,经过测试的Go库,用于生成和解析一种称为KSUID的特定类型的全局唯一标识符。
UUID中有固定的四个 ”-“,所以32位长。128位是 二进制, 每四个二进制转一个16进制数。 128/4=32 所以,就是32个16进制数的字符了。
安装
go get -u github.com/segmentio/ksuid
什么是KSUID?
简而言之,通过UNIX sort命令将按生成时间排序的一组KSUID列表。
为什么要使用KSUID?
生成唯一标识符的方法有很多,那么为什么要使用KSUID?
UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Software Foundation, OSF) 的组织应用在分布式计算环境 (Distributed Computing Environment, DCE) 领域的重要。
自然地按生成时间排序
无冲突,无协调,无依赖
uuid是128位的全局唯一标识符(univeral unique identifier),通常用32位的一个字符串的形式来表现。有时也称guid(global unique identifier)。python中自带了uuid模块来进行uuid的生成和管理工作。(具体从哪个版本开始有的不。
高度可移植
即使只有这些属性中的一项对您很重要,KSUID也是一个不错的选择!:)许多项目选择使用KSUID只是因为文本表示形式易于复制和粘贴。
按生成时间自然排序
与普遍使用的UUIDv4不同,KSUID包含时间戳组件,该组件使它们可以按生成时间进行松散排序。二进制表示形式和文本表示形式都将按创建时间进行排序,而无需任何特殊的排序逻辑。
2.无冲突,无协调,无依赖
KSUID包括128位伪随机数据(“熵”)。此数字空间比公认的RFC 4122 UUIDv4标准使用的122位大64倍。附加的时间戳分量可以被认为是“附加熵”,其进一步减小了碰撞的可能性,以至于在任何实际实现中都是物理上不可行的。
高度可移植
文本和二进制表示形式可按字典顺序排序,这使它们可以放入本机不支持KSUID并保留其按时间顺序排列的属性的系统中。
KSUID如何工作?
文本表示形式始终是27个字符,以字母数字base62编码,将按时间戳按字典顺序排序。
安装命令行客户端
go install github.com/segmentio/ksuid/cmd/ksuid
生成KSUID
企业回肽链合成选上海科肽生物科技有限公司,上海科肽生物科技有限公司是一家高科技的生物公司,主要从事多肽合成和修饰的开发工作。本公司由几位留美博士组建而成,欢迎来电咨询!
$ ksuid0ujsswThIGTUYm2K8FjOOfXtY1K
生成多个KSUIDs
$ ksuid -n 40ujsszwN8NRY24YaXiTIE2VWDTS0ujsswThIGTUYm2K8FjOOfXtY1K0ujssxh0cECutqzMgbtXSGnjorm