问题标签 [uuid]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
namespaces - UUID 命名空间和名称。如何找回它?
我有以下问题。我为数据库中的任何对象分配了一个 UUID。当我从任何来源获取 UUID 时,要获取对象我需要知道对象是什么类型,这样我才能在数据库中查询正确的表。据我了解,UUID 版本 5 支持命名空间,但我不确定我是否清楚理解它的含义。
是否可以关联到有关其所属名称空间的 UUID 信息,以便稍后恢复它?
uri - RDF 和 uuid。为什么没有瓮模式?
为什么这about
不包含urn:uuid:8949dbc6-31ad-11d9-9c7d-d112c21f7031
呢?uuid 不是一个骨灰盒,因此需要在它前面有一个骨灰盒:方案吗?
erlang - 您使用什么模块或库在 Erlang 中生成通用唯一标识符 (UUID)?
您使用什么模块或库来生成通用唯一标识符 (UUID)?
iphone - 在没有 iTunes 的情况下获取 UUID
我正在寻找一种在不使用 iTunes 的情况下提取我的 iPhone (OS v3.0) UUID 的方法。我从 Cydia Store 尝试了“UUID Revealer”,但这在我的系统上不起作用。我可以使用 WinSCP 进行 SSH,并且我安装了终端程序。有没有机会使用其中一种工具(或另一种)来揭示我的 UUID?谢谢
distributed - 如何在分布式环境中有效地查找有关 UUID 的信息?
我目前正在使用模对 UUID 空间进行分区,因此数据查找不需要 ping 每一台服务器。但是,模数的主要问题是扩展,因为向数据存储添加更多节点可能需要一些数据迁移。在您看来,在保持服务可用的同时向系统添加更多节点的最佳方法是什么?
提前致谢!
克里斯
uuid - 您可以从 UUID 中提取哪些类型的数据?
我知道我们可以轻松提取 uuid 版本号。是否有可靠的方法来提取时间戳、MAC 地址等信息?
谢谢!
java - 你怎么说以这种方式砍类型 4 UUID
检查这个,
这种方法就像魅力一样传递。我的印象是,取最低有效位比取最高有效位要好一些。因为在最高有效位中,您为某些信息固定了 6 位,而最低有效位并非如此。因此,平均而言,我们需要生成 2^29 个 UUID 才能与最高有效位发生冲突,但 2^32 个 UUID 与最低有效位发生冲突。参考:SO 线程。我的假设是对的吗?
现在,在这里,我将从该方法中获得的最低有效位中再砍掉 2 个最高有效数字。我正在使用子字符串。请注意,我正在砍掉 2 个数字和一个符号位。这是否意味着现在我们平均需要生成 2^31 个 UUID 才能发生碰撞?
准确地说,我正在尝试生成一个不应超过 17 位长度的唯一标识符。它必须是一个整数,而不是 Java 类型的意义。我的方法有多可靠?
元信息:
实际上,我们正在与一些遗留系统集成,我们必须提供一些不超过 17 位的唯一编号。我假设他们将它作为数据库唯一键。在这种情况下,我们也可以使用序列,我首先提出了这一点。但他们对我说,如果我能想出一个随机数就好了,这样消费者就猜不到了。
据我所知,关于 Java 中 UUID 的 type-4 实现,我们平均需要生成 2^61 个 UUID 才能发生冲突。这是否意味着我们需要生成 2^32 来获得最低有效位的冲突,以及 2^29 来获得最高有效位的冲突?如果是,那么假设我们需要平均生成 2^31 以在切掉 2 个最左边的数字后在最低有效位上发生冲突是不正确的吗?
我也尝试使用SecureRandom
,但这也给了我 19 位数的长值。因此,我最终也先将其砍到数位。下面是代码。
yyMMddHHmmssSSS
我能想到的另一个选择是以“ +2-seq-digits”格式使用日期。但我想这将完全依赖于处理器,并且可以猜测。因为我不太确定在 99 轮之后我得到了毫秒的变化。也许我会,但这取决于处理器速度。不过,99 个同时请求是不太可能的。
python - 我什么时候应该在 python 中使用 uuid.uuid1() 和 uuid.uuid4()?
我从文档中了解两者之间的区别。
uuid1()
:
根据主机 ID、序列号和当前时间生成 UUID
uuid4()
:
生成一个随机的 UUID。
因此uuid1
使用机器/序列/时间信息来生成 UUID。使用每种方法的优缺点是什么?
我知道uuid1()
可能会有隐私问题,因为它是基于机器信息的。我想知道在选择其中一个时是否有更微妙的地方。我uuid4()
现在就使用,因为它是一个完全随机的 UUID。但我想知道我是否应该使用它uuid1
来减少碰撞的风险。
基本上,我正在寻找人们关于使用一个与另一个的最佳实践的提示。谢谢!
python - 来自同一台机器上多个进程的唯一 UUID
为了标记我们创建的数据,我正在考虑使用 uuids。安全性不是问题,所以我打算使用版本 1(基于日期和 MAC 地址)。唯一需要担心的是,每个用户可能会同时从具有多个线程的不同进程创建多个数据文件。假设 Python 的 uuid 库是线程安全的(尽管看起来不是这样),但仍然存在多进程问题。我正在考虑用破折号和进程号作为 uuid 后缀。
由于我们小组对 uuids 的经验很少,所以我需要牢记什么问题?多进程问题通常如何处理?
java - Apache Commons Id UUID 版本 1 的问题
我的问题是生成版本 1 UUID。我们使用 Jetty 6.x、Maven(启动 Jetty 等)和Apache Commons ID(从当前时间生成 UUID 版本 1)。
Apache Commons ID需要一个配置文件,该配置文件使用参数告知 JVM,例如“org.apache.commons.id.uuid.config.resource.filename=commons-id-uuid.xml”。我检查了Apache Commons ID代码,它尝试从类路径中查找文件。Jetty 的文档指出 WEB-INF/lib 和 WEB-INF/classes 在类路径中。'commons-id-uuid.xml' 可以在 WEB-INF/classes 目录的根目录下部署的 war 文件中找到,但 Jetty 无法加载它:
Jetty 是使用以下命令启动的:
知道出了什么问题吗?我们只需要生成 UUID 版本 1 标识符。有什么建议么?