怎样保证生成10位唯一订单号?

订单号规则第1位随机1-9;第2位,我自己在程序中根据业务指定;1,2,3,4,5,6,7,8,9剩下的3-10位都随机。怎样保证唯一性呢?
我有一个办法,就是每次生成之前,先随机一把,然后去订单表里面查一下是否有重复的,有就再随机一把,再查,直到没有一样的,然后在保存订单到数据库。
这种效果咋样,数据多了,是不是影响性能。订单表最多允许500万数据吧,用户20万。web金融业务,用户不是长期在线那种,每天每个用户也就平均登陆5次。
系统只保存最近3个月订单,多了就转移到一个历史数据里面,不让订单表无限扩大。
现在纠结的是这样做,会不会很影响性能?目前没更好的想法。
SMILET
浏览 1468回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript