无需登录 数据私有 本地保存

ULID 在线生成器 - 时间排序的唯一标识符

14
0
0
0
ULID 生成器
时间排序 · 唯一标识
01JDRYBH6TK8V7X2Q9F3W5P4M
时间戳编码 随机数编码

📅 加载中...

批量生成
(1–100)

点击"批量生成"按钮生成多个 ULID

ULID 解析器
结构分解:
📅 时间戳:
⏱️ 相对时间:
生成历史

暂无生成记录

常见问题

ULID(Universally Unique Lexicographically Sortable Identifier)是一种通用唯一字典序可排序标识符。它由26个字符组成,使用 Crockford's Base32 编码,前10位是48位毫秒级时间戳,后16位是80位加密安全随机数。ULID 兼具UUID的唯一性和按时间排序的便利性,且比UUID更短、更易读、URL安全。

UUID v4:36字符(含连字符),完全随机,无法排序,使用十六进制编码。
ULID:26字符,按时间戳排序,Base32编码,更紧凑。ULID 的优势在于:①可按生成时间自然排序,非常适合数据库主键;②长度更短,节省存储空间;③不含特殊字符,URL和文件系统安全;④可解码提取生成时间,方便调试。

ULID 使用 Crockford's Base32 编码,字母表为 0123456789ABCDEFGHJKMNPQRSTVWXYZ。排除 I、L、O、U 是为了避免与数字 1、0 和字母之间的混淆(I/1、L/1、O/0、U/V),提高人工阅读和手动输入时的准确性,减少出错概率。

ULID 特别适合:①数据库主键——按时间排序可提升B+树索引性能,减少页分裂;②分布式系统——无需协调中心即可生成全局唯一ID;③日志追踪——从ID可直接读取时间,无需查询数据库;④API资源标识——比自增ID更安全(不可预测),比UUID更短;⑤消息队列——天然支持按时间排序消费。

是的。本工具使用浏览器提供的 crypto.getRandomValues() API 生成80位(10字节)加密安全随机数,这是密码学级别的随机源。在同一个毫秒内生成多个ULID时,随机部分会自动递增以保证唯一性和排序一致性。碰撞概率极低:在相同毫秒内需生成约2^40(约1万亿)个ULID才有50%的碰撞概率。

本工具支持单次批量生成1–100个ULID。批量生成时保证严格按时间排序,同一毫秒内生成的ULID通过递增随机部分来确保唯一性和有序性。生成结果可通过"复制全部"按钮一键复制,多个ULID以换行符分隔,方便粘贴到代码、文档或数据库脚本中。