插件概览
ULID 是一种 128 位标识符,结合了 48 位时间戳和 80 位随机数,生成可字典序排序的 ID。编码为 26 个字符的字符串,比标准 UUID(36 个字符)更紧凑。ULID 非常适合需要唯一且按时间顺序排列的标识符的分布式系统,无需依赖集中式协调。该包支持多种平台,包括 Android、iOS、Web、macOS、Windows 和 Linux。
适合场景
- 分布式系统标识符
- 时间顺序的数据跟踪
- 数据库主键
- API 请求跟踪
- 安全会话令牌
- 日志条目标识
主要特点
- 字典序可排序
- 紧凑的26字符编码
- 内置时间戳
- 高熵,80个随机位
- 跨平台支持
- 无对外部服务的依赖
适合对象
- 需要时间顺序唯一性的应用程序
- 避免中心化ID生成的系统
- 高性能数据库
- 事件溯源架构
- 具有去中心化ID的微服务需要
使用建议
- 不适合用于加密密钥
- 在高频场景下需要谨慎处理
- 受限于128位大小限制
- 在旧系统中并不普遍支持
- 在严格合规环境中可能需要验证