ID生成
来源:互联网 发布:java 动态代理参数 编辑:程序博客网 时间:2024/05/22 04:36
我们公司做项目,需要生成不重的ID。原来的方法是用UUID生成一个36位的ID。这样虽然长,但是能保证唯一,同时速度快。但是向用户展示不太好看。用户有什么问题需要咨询客服的时候也不好读出来。因此这一版本考虑重新制定ID生成规则。
很自然就会想到单独建立一个表,用于记录每一个人连续递增索引。这种方式有优点,就是生成的ID可以很短,并且分析ID只能分析这个人的交易量,但是能分析出用户注册数量来。打乱顺序来记录是个方法。
从网上浏览了一些文章,里面介绍了各种方法,但是没有特别合适的,结合我们用的redis服务。我们最终采用的方案是年月日时分秒+四位数字。前面的就是生成ID的时间。后面的四位数字采用redis上递增数字的后三位,加上一位随机干扰数字。当然干扰数字放在三位数字中倒数第二位和倒数第三位之间。这个方案能保证我们每秒生成的ID数小于1000的情况下生成的ID不重。就算是redis宕机重启后,由于时间向前走了,ID也不会重复。同时竞争对手也很难通过我们的ID看出我们的交易量。
0 0
- 生成id
- ID生成
- 对象ID:生成id,还是hash id?
- ibatis 处理生成 ID
- JPA ID生成策略
- JPA ID生成策略
- 生成单据ID
- C# 生成唯一ID
- JPA ID生成策略
- Hibernate ID 生成策略
- 生成唯一的ID
- hibernate id 生成策略
- ORACLE 触发器生成id
- GridView自动生成ID
- hibernate id自动生成
- java 程序生成id
- C#生成ID
- Java hibernate id 生成
- 怎么制作电子邮件 电子邮件制作方法?
- 2-java 类库
- 2.Android笔记之TableLayout(表格布局)
- 先技术在思想or先基础在技术
- HTTP请求方法及响应码详解(http get post head)
- ID生成
- commons-fileupload实现文件上传功能实例
- 老妈第一次来北京,该上哪玩去呢
- eclipse maven项目庞大时,heap 溢出的处理
- 急救须知1
- Spark命令行测试转换RDD to DataFrame报Relative path in absolute URI错误-Win7
- 大运会的疑惑: 是大学生运动会么???
- window.print()打印网页中指定内容的实现方法
- 读取系统联系人