第一种        GUID  由算法自动生成下 理论上能产生全球唯一的值   不过对于用户记订单号不方便

Console.WriteLine(System.Guid.NewGuid());
                   Console.ReadKey(); 
                   //生成结果:5322d297-51b4-4198-8625-cc465c948852

第二种   随机数1000-9000范围内的数 再根据时分秒生成   不过大数据并发依然有重复的可能
                 Random rand = new Random();
                 int shu2 = rand.Next(1000, 9999);
                 string randId = DateTime.Now.ToString("yyyyMMddHHmmss") + shu2;
                 Console.WriteLine(randId);
                 Console.ReadLine();

第三种     给订单号设置自增  虽不会重复  但标志列只有一个   Id就不能唯一
            
第四种     简单一点的,可以由用户ID(数字)、时间、随机数组合生成,因为用户ID是唯一的,生成的订单号也就不会重复了

第五种     用64位MD5对用户名和时间加密,再用加密后的签名做订单号。理论上来说该算法是不会重复的,除非订单量超过了2的64次方

第六种     IP地址、时间、计算机机器码、用户名、随机数  时间戳(10)+省id(6)+市id(6)+区id(6)+四位随机数(4)

第七种   有网友用并发性lock解决为了解决并发性,就直接在生成订单号的区域块加上lock

1.新建项目

2.新建BillNumberBuilder 类

3.新建OrderIdHelper类

4.生成

生成结果

Wen20170309180733
Wen20170309180735

不重复订单号生成的方法相关推荐

  1. 支付不重复订单号生成

    最近的项目中支付的订单号是使用附加项目中的工具做的,是一种带数据库自增形式的订单号,开始测试的时候没有任何问题,但是再高并发的实际应用中还是有不小的问题,只怪自己考虑太少,必须在高并发模式下保证订单号 ...

  2. php如何生成订单号,php如何生成不重复订单号

    php生成不重复订单号的方法:首先可以预先生成订单号:然后进行去重存起来:最后用的时候取一个出来用就行,代码为[$orderNo = date('YmdHis').substr(microtime() ...

  3. php产生订单号不重复,php如何生成不重复订单号

    php生成不重复订单号的方法:首先可以预先生成订单号:然后进行去重存起来:最后用的时候取一个出来用就行,代码为[$orderNo = date('YmdHis').substr(microtime() ...

  4. php 不重复订单号,php如何生成不重复的订单号,php不重复订单编号

    php如何生成不重复的订单号PHP如何生成重复的订单号,php生成不重复订单号的方法如下:1.利用数据库的主键值生成自增订单号:2.实现"日期自增号"的订单号:3.生成随机订单号: ...

  5. 快速订单号生成(两秒左右10万条数据无重复)

    订单号生成 在开发当中我想大部分程序员都会做商城类的项目,其中订单号是一个相对比较重要的数据,在用户下单是不允许有重复订单生成的. 我给大家提供了一个生成订单的方法,希望对您有所帮助!!!!!!!!! ...

  6. php 不重复订单号,php如何生成不重复的订单号

    php生成不重复订单号的方法:1.利用数据库主键值产生一个自增长的订单号:2.实现"日期+自增长数字"的订单号:3.产生随机的订单号:4.实现"字母+数字字符串式&quo ...

  7. Java怎么避免重复订单_javaEE高并发之如何产生唯一不重复订单号

    javaEE高并发之如何产生唯一不重复订单号 1.方案一:使用进程ID,线程ID,IP,MAC地址和时间戳进行拼接产生订单号 (1)如果没有并发,订单号只在一个线程内产生,那么由于程序是顺序执行的,不 ...

  8. 电商平台订单号生成策略

    订单是整个电子商务的核心.整个电子商务的流程也是围绕订单的状态执行的.这篇博客主要向大家介绍订单号的生成方式. 现在大型电商网站大多都有好几种下单途径.比如:通过Web网站下单,通过打电话到呼叫中心下 ...

  9. Python模拟订单号生成

    模拟订单号生成 为了产生不冲突的订单号,本次测试订单生成逻辑比较简单:当天时间拼接自增数列 from datetime import datetime def set_flow():base_code ...

最新文章

  1. GLSL三种修饰符区别与用途(uniform,attribute和varying)
  2. 84. Largest Rectangle in Histogram
  3. GPS定位系统源码只有这种才是最适合做二次开发的...
  4. Windows 10 Threshold 2 升级记录
  5. 类QQ右下角弹出框(Qt)
  6. 软件设计师1991下午试题1(流程图解析)
  7. Stateflow_报错记录
  8. 【ClickHouse】Hangout with ClickHouse
  9. php中阿里云快递物流查询接口使用
  10. 移动机器人MPC控制仿真实现
  11. 天猫精灵测评与开发案例
  12. Android 中 shape 各种属性详细介绍
  13. mysql基于PHP的校园竞赛信息网站 毕业设计源码221230
  14. tp-link 路由器iD登陆时,经常的发送请求失败,解决办法如下
  15. 【方案分享】2022虎年新春潮玩嘉年华活动策划方案:我们超虎的.pptx(附下载链接)...
  16. 体悟朝闻道,夕死可以
  17. 循环抓取xkcd首页图片
  18. less 自适应高度_使用HTML5和Less框架3的自适应Web设计
  19. #npm# extraneous问题
  20. Mac Parallels Desktop 安装 Centos 虚拟机

热门文章

  1. samba(smb服务)实现网络文件共享
  2. Oracle性能优化-1-索引
  3. 利用Numpy计算行列式
  4. 网络教育与自考,成教有什么区别?
  5. Ubuntu的读音和意义(转)
  6. 轻度过放对于三元体系锂离子电池性能的影响
  7. 心态平和,头脑清醒,智慧大开,考试顺利,考的都会,
  8. Verilog有符号数运算,四舍五入,饱和截位
  9. 摩尔庄园手游|摩尔庄园这些壁纸你拥有了吗?
  10. swoole等多进程下的 mysql has gone away 解决方案