防止注册的 id 重复 有什么思路吗?

326 天前
 gebishushu
总不能 写个 sql 语句先查询下这个 id 有没有吧?有的话提示重复?
还有更好的办法吗?
1487 次点击
所在节点    问与答
15 条回复
Zyhusesit
326 天前
可以像 Reddit 一样给用户分配一个不会重复的 ID, 然后不允许用户修改.
Valid
326 天前
自增 id 啊
gebishushu
326 天前
@Valid 用户注册的 id 自己定义的那种用户名
Maboroshii
326 天前
就是你说的这样啊,加上唯一索引,写 db 的时候再让数据库帮你校验一遍。
不要把简单的事情想复杂了
gebishushu
326 天前
@Maboroshii 谢谢
我是考虑比如数据量大了的情况 假如有 100w 个用户,每次看有没有重复的查询 会卡不
Maboroshii
326 天前
@gebishushu 不会,有索引就是毫秒级别。
weazord
326 天前
@gebishushu 100w 个 ID 放数据库没问题的,不算是很大的数字,放在注册的时候基本无感
gebishushu
326 天前
@weazord
@Maboroshii
谢谢了
Rocketer
326 天前
还真就是写个 sql 查一下,设成唯一索引很快的,b-tree 的原理了解一下
akira
326 天前
你怕 100w 个用户的时候注册会有问题,但是实际情况是一定是其他地方会先崩。
更多的时候,其实项目初期没必要太过于考虑性能问题,先把业务逻辑跑起来把。
zmaplex
326 天前
不想要想复杂了,50w 用户以内按一般实践来就行,遇到问题再用根据具体问题看看哪个方案更合适。
justfindu
325 天前
总不能? 那不然呢? 100w 而已
Naccl
325 天前
布隆过滤器
jackOff
325 天前
使用 uuid,基于年月日时分秒再加上基础的 uuid 生成的 uuid 就是绝对唯一
PerFectTime
325 天前
学贴吧 id 做主键,hhhhh (馊主意,不要尝试

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/950152

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX