Questions tagged «uuid»

顾名思义,UUID(通用唯一IDentifier)是创建时具有唯一性的标识符。



3
生成v5 UUID。什么是名称和名称空间?
我已经阅读了该man页面,但是我不理解其用途name和namespace目的。 对于版本3和版本5 UUID,必须指定其他命令行参数名称空间和名称。名称空间可以是字符串表示形式的UUID,也可以是内部预定义名称空间UUID的标识符(当前已知为“ ns:DNS”,“ ns:URL”,“ ns:OID”和“ ns:X500”)。名称是任意长度的字符串。 命名空间: 名称空间可以是字符串表示形式的UUID,也可以是 这是否意味着我需要将其(UUID v4)存储在与生成的UUID v5相关的位置?无论哪种情况,为什么都不会自动完成? 名称是任意长度的字符串。 name一个完全随机的字符串?那么它的目的是什么?可以从UUID v5解码吗?
125 uuid 

16
您何时真正被迫使用UUID作为设计的一部分?
我真的不明白UUID的意义。我知道发生碰撞的可能性实际上是nil,但实际上nil几乎不可能。 有人可以举一个例子,您除了使用UUID别无选择。从我所看到的所有用途中,我可以看到没有UUID的替代设计。当然,设计可能会稍微复杂一些,但至少它不会有非零的失败概率。 对我来说,UUID闻起来像全局变量。全局变量可以通过多种方式来简化设计,但这只是懒惰的设计。
123 architecture  uuid 

3
UUID最大字符长度
我们将UUID用作oracle数据库的主键,并尝试确定VARCHAR的适当最大字符长度。显然,这是36个字符,但我们注意到生成的UUID比此更长-最多60个字符。有人知道UUID合适的最大字符长度吗?
114 primary-key  uuid 

12
有没有一种用go语言生成UUID的方法
我有看起来像这样的代码: u := make([]byte, 16) _, err := rand.Read(u) if err != nil { return } u[8] = (u[8] | 0x80) & 0xBF // what does this do? u[6] = (u[6] | 0x40) & 0x4F // what does this do? return hex.EncodeToString(u) 它返回一个长度为32的字符串,但是我认为这不是有效的UUID。如果它是真实的UUID,为什么它是UUID,以及修改u[8]and 的值的代码的目的是什么u[6]? 有没有更好的方法来生成UUID?
109 go  uuid 

5
如何创建确定性指南
在我们的应用程序中,我们正在创建具有属性Guid值的Xml文件。此值需要在文件升级之间保持一致。因此,即使文件中的其他所有内容均发生更改,该属性的guid值也应保持不变。 一种明显的解决方案是使用文件名和要使用的Guid创建一个静态字典。然后,无论何时生成文件,我们都会在字典中查找文件名并使用相应的guid。但这是不可行的,因为我们可能会扩展到100个文件,并且不想维护大量的Guid。 因此,另一种方法是根据文件的路径使Guid相同。由于我们的文件路径和应用程序目录结构是唯一的,因此Guid对于该路径应该是唯一的。因此,每次我们运行升级时,文件都会根据其路径获得相同的GUID。我找到了一种生成此类“ 确定性指南 ”的不错方法(谢谢Elton Stoneman)。它基本上是这样做的: private Guid GetDeterministicGuid(string input) { //use MD5 hash to get a 16-byte hash of the string: MD5CryptoServiceProvider provider = new MD5CryptoServiceProvider(); byte[] inputBytes = Encoding.Default.GetBytes(input); byte[] hashBytes = provider.ComputeHash(inputBytes); //generate a guid from the hash: Guid hashGuid = new Guid(hashBytes); return hashGuid; } 因此,给定一个字符串,Guid将始终相同。 …
103 c#  .net  guid  uuid 

2
在C ++中使用Boost生成UUID的示例
我只想生成随机的UUID,因为对于程序中的实例来说,拥有唯一的标识符非常重要。我研究了Boost UUID,但是由于无法理解要使用哪个类和方法,因此无法生成UUID。 如果有人可以给我任何实现此目标的示例,我将不胜感激。
94 c++  boost  uuid  boost-uuid 

6
在JavaScript中生成UUID时发生冲突?
这涉及到这个问题。我正在使用此答案中的以下代码在JavaScript中生成UUID: 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8); return v.toString(16); }); 该解决方案似乎工作正常,但我遇到了冲突。这是我所拥有的: 在Google Chrome中运行的网络应用。 16个用户。 这些用户在过去2个月中已生成约4000个UUID。 我发生了大约20次碰撞-例如,今天生成的新UUID与大约2个月前相同(不同的用户)。 是什么导致此问题,如何避免呢?


6
在Django模型中使用UUID作为主键(通用关系影响)
由于多种原因^,我想在某些Django模型中使用UUID作为主键。如果这样做,我是否仍可以使用通过ContentType使用通用关系的外部应用程序,例如“ contrib.comments”,“ django-voting”或“ django-tagging”? 以“ django-voting”为例,Vote模型如下所示: class Vote(models.Model): user = models.ForeignKey(User) content_type = models.ForeignKey(ContentType) object_id = models.PositiveIntegerField() object = generic.GenericForeignKey('content_type', 'object_id') vote = models.SmallIntegerField(choices=SCORES) 该应用似乎假设要投票的模型的主键是整数。 内置的注释应用程序似乎能够处理非整数PK,但是: class BaseCommentAbstractModel(models.Model): content_type = models.ForeignKey(ContentType, verbose_name=_('content type'), related_name="content_type_set_for_%(class)s") object_pk = models.TextField(_('object ID')) content_object = generic.GenericForeignKey(ct_field="content_type", fk_field="object_pk") 对于第三方应用程序来说,这种“整数PK假定”问题是否很常见,这会使使用UUID感到痛苦?或者,可能是我误读了这种情况? 有没有一种方法可以将UUID用作Django中的主键,而又不会造成太多麻烦? ^一些原因:隐藏对象计数,防止url“ id爬行”,使用多台服务器创建不冲突的对象,...

3
UUID格式:8-4-4-4-12-为什么?
为什么UUID以“ 8-4-4-4-12”(数字)格式显示?由于这个原因,我环顾四周,但找不到所需的决定。 格式化为十六进制字符串的UUID的示例:58D5E212-165B-4CA0-909B-C86B9CEE0111
84 format  guid  uuid 

9
MySQL中的UUID性能?
我们正在考虑将UUID值用作MySQL数据库的主键。所插入的数据是由数十,数百甚至数千台远程计算机生成的,并且以每秒100-40,000次插入的速度插入,我们将永远不会进行任何更新。 在我们开始选择数据之前,数据库本身通常将获得约5000万条记录,因此不是庞大的数据库,也不是很小的数据库。我们也计划在InnoDB上运行,但是如果我们有更好的引擎来进行我们的工作,我们愿意改变它。 我们已经准备好使用Java的Type 4 UUID,但是在测试中已经看到了一些奇怪的行为。一方面,我们将其存储为varchar(36),但现在我意识到使用Binary(16)会更好-尽管我不确定有多少更好。 更大的问题是:当我们拥有5000万条记录时,此随机数据对索引的破坏有多严重?如果我们使用例如类型1的UUID标记最左边的比特,我们会更好吗?还是我们应该完全放弃UUID并考虑使用auto_increment主键? 我正在寻找有关不同类型的UUID在MySQL中作为索引/主键存储时的性能的一般想法/提示。谢谢!

7
Android:蓝牙UUID如何工作?
我不明白蓝牙UUID表示什么。UUID是否表示协议(例如RFCOMM)?如果是这样,createRfcommSocketToServiceRecord()当方法在其名称中正确指定rfcomm时,为什么它们需要UUID?为什么BluetoothChat示例代码具有看似任意的硬编码UUID? 之所以出现我的问题,是因为按照这个问题,当运行4.0.4的设备尝试使用反射连接(连接到外部非Android设备)时,出现了空指针异常。但是,该问题的解决方案对我不起作用。UUID muuid = device.getUuids()[0].getUuid();引发异常。 编辑:通过按照此答案(使用UUID.fromString("00001101-0000-1000-8000-00805f9b34fb");)对串行端口服务的UUID进行硬编码,我解决了该问题。 为什么我需要提供一个UUID来创建一个不安全的rfcomm套接字createInsecureRfcommSocketToServiceRecord(),,而不使用反射方法,我对此进一步感到困惑。 谁能理我?


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.