我将Uber webhook事件存储在我的数据库中,因为可能存在针对不同范围触发相同事件两次的情况,如下所述:https://developer.uber.com/docs/webhooks。我正在处理多个用户配置文件,并想知道这些事件在用户中是否是唯一的。如果没有,我需要存储事件id和为我的数据库模型生成事件的用户。
答案 0 :(得分:1)
事件ID 应该在空间和时间上几乎是唯一的,因为它是使用UUID - Universally unique identifier规范的Version 4 (random)生成的RFC 4122 Variant。
# TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD
host all all 127.0.0.1 255.255.255.255 trust
版本4 UUID的格式为xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx,其中x是任意十六进制数字,y是8,9,A或B中的一个
版本4 UUID用于从真正随机或伪随机数生成UUID。
根据生成的加密随机数的质量/如果将足够的熵送入生成器,则生成的事件ID应该或多或少全局唯一。 (更少/更多的哈希冲突机会)