分布式系统中的 UUID 毫秒不安全吗?

问题描述 投票:0回答:1

我目前正在开发一个分布式系统,该系统在断开连接的分布式机器上生成大量记录,并将它们反馈给集中式系统,以进一步处理它们。

我们正在使用 python 工作。

UUID 在这些断开连接的分布式系统上生成,并在发送到集中式服务之前添加到记录中。

我们需要生成 UUIDS,并且我们知道 uuid 库 - 但目前尚未使用它。

但其他人只想使用当前时间戳(以毫秒为单位)。我坚信这是不安全的,并且我相当有信心如果我们不添加一些东西来进一步区分记录,这将导致冲突和碰撞。在单个系统服务上,这很好,但在大型分布式系统中,我认为不会。

我希望这些 UUID 有助于可追溯性。因此,我想在 ID 中包含源系统的名称。这样我们就可以避免任何和所有可能的冲突。但由于复杂性增加,存在很大的阻力。

我尝试在足够大的系统上模拟该问题,但很难解决,而且我在开发过程中可用的机器数量有限。

我尝试寻找论文和文章等,但无济于事。

python datetime uuid distributed-computing distributed-system
1个回答
0
投票

您应该使用UUIDv7:https://pypi.org/project/uuid6/

对 RFC4122“通用唯一标识符 (UUID)”的修订:https://datatracker.ietf.org/doc/draft-ietf-uuidrev-rfc4122bis/

© www.soinside.com 2019 - 2024. All rights reserved.