UUID v7 生成器(符合 RFC 9562)

关于此工具

这是一个基于当前 UTC 时间(毫秒)生成可按时间排序的 UUID v7 的工具。时钟来源和“使用时间”的选择会反映到生成时间,并与预览完全一致。即使指定了时区,UUID v7 的生成仍以对应时刻的 UTC 为基础(规范如此规定)。所有处理都完全在浏览器内完成(不会发送任何数据)。

时间确认

生成与输出

使用方法

  1. 在“时间确认”中选择 本地 / IANA / 固定偏移。(保持默认设置通常即可)
  2. 在“使用时间”中选择 当前时间指定日期时间。需要指定时请输入 YYYY-MM-DDTHH:MM[:SS[.mmm]](用于预览和生成)。
  3. 若选择 指定日期时间,输入会按时间比较中设定的时区解析为该时区的日期时间。
  4. 设置“生成数量”,必要时切换“单调生成”,然后点击“生成”。输出区域会按行显示结果。

补充说明

  • 预览会显示当前的 UTC 时间以及基于所选来源的本地时间。生成时会直接使用预览中的时间
  • IANA 时区会考虑夏令时(DST)来确定偏移量(通过迭代稳定化)。
  • 输出区域为只读。复制/清除请通过按钮操作。
  • 即使连续点击,每次也都会重新初始化随机源,以便在相同时刻和设置下获得新的序列。

注意事项

  • UUID v7 的时间戳是“UTC 纪元毫秒”,时区只是显示方式的问题。使用当前时间生成时,即使切换时区,时间戳本身(高位部分)也保持一致。
  • 只有在选择指定日期时间时,才会将输入的墙上时钟时间(加上所选来源的时区/偏移)转换为对应的 UTC 并写入时间戳。
  • 单调生成开启:同一毫秒内末尾会加 1。关闭:每次重新抽取随机数,结果完全分散。

什么是 UUID v7?

UUID v7 的前 48 位为“自 Unix 纪元以来的毫秒数”,接着的 4 位为版本号(7),再后面是 12 位加 62 位的随机数,中间包含 2 位变体(10)。它在按时间排序的便利性与唯一性之间取得了良好平衡。