生成唯一id-创新互联

有时候在某些业务中需要先生成一个唯一id,然后再进行存储.可以使用一下的方法:

创新互联提供高防服务器、云服务器、香港服务器、成都服务器托管

1.借助mysql或者redis这类能够自增的数据库

   这种方式可以满足需求但是需要跟数据库有一次额外的操作.对性能有一定的影响

2.毫秒级的时间加上一个随机数.

这种方式不需要借助数据,性能高些,但是随机数可能会重复,所以结果可能不是全局唯一的

3.毫秒级的时间加上进程id

这种方式可以既满足性能,又是唯一的

对于多核的cpu,每个cpu可以同时执行不同的进程,而每个进程有唯一的id,所以时间可能相同,但是进程的id一定是不同的,这样两者的组合就一定是全局唯一的.

至于选哪中我觉得还是看业务的并发量的.没什么并发的情况下第一种就可以了,虽然会影响性能,但是如果需要查看生成的总数就比较方便了,3比2多了次系统调用,理论上性能要低些.

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


新闻名称:生成唯一id-创新互联
文章起源:http://scyanting.com/article/dpeshj.html