【发布时间】:2018-07-04 03:21:10
【问题描述】:
我正在开发一个需要为新用户生成 id 的应用程序我想用最少的字符来创建 1000 亿个不同的可能 id 所以我应该怎么做以及如何避免给两个用户一样吗?我应该看看那个id是否存在?我应该使用随机 id 生成器还是按 001 002 等顺序提供 id?
【问题讨论】:
-
计数器,就像你提到的那样,可能是一个很好的解决方案。这就是数据库使用的。只需保存会话之间的状态即可。
-
“最小字符数”取决于您的字符集的大小 - 仅数字 [0-9]?字母数字 [0-9][a-z][A-Z]?还有什么?
-
^^ @OregonJim 所说的。一旦你定义了你的字符集,你就可以计算字符的数量,然后使用计算器进行乘法运算,直到达到“1000 亿”的限制。 [number of mults]+1 给出了唯一标识这些用户所需的字符数。
标签: c