【发布时间】:2012-10-29 17:41:00
【问题描述】:
我正在使用 Python 标准 uuid 库。如果我的应用程序最终扩展到多台服务器,我应该怎么做才能确保 UUID 不会发生冲突,因为不同的系统将使用不同的机器 id?我应该使用哪个 UUID 生成器?
【问题讨论】:
我正在使用 Python 标准 uuid 库。如果我的应用程序最终扩展到多台服务器,我应该怎么做才能确保 UUID 不会发生冲突,因为不同的系统将使用不同的机器 id?我应该使用哪个 UUID 生成器?
【问题讨论】:
uuid1() 应该足以满足您的需求,因为它考虑了主机 ID。
在 RFC 4122 的 section 4.2.2 中,这是关键位:
- 将节点字段设置为 48 位 IEEE 地址,其重要性顺序与地址相同。
节点字段是 UUID 的最后 6 个字节,将反映相关主机的 MAC 地址之一。
【讨论】: