引出
大家都用过QQ或者微信吧, 当我们注册的时候, 会被自动分配一个QQ号, 这个号码是全局唯一且固定的, 那么, 如果是你来写的话, 如何为新注册的用户分配一个号码呢?...很好, 那么现在问题就归结为, 如何给每个用户都配一个唯一标识
1.数数
直接想到的方案, 从1开始, 慢慢往后数, 而这个过程可以借助MySQL的主键自增, 也可以借助redis的单线程优势....等等吧,
2.用户特征
可以根据不同用户的特征, 如用户的地域、性别、生辰等等, 来生成每个人的唯一标识, 此举可以参考身份证号码的生成, 每个人都是不一样的
3.当前机器特征
找到执行代码时的特定特征..., 如: mac地址、时间戳、机器编号、线程ID等等
4.代码运行次数
线程共享变量, 每次执行则+1....现在已经有很多工具了, uuid, MongoDB的objectid等, 基本可以拿来直接使用.