关于UUID的一个疑惑?

需要唯一标识的地方用雪花算法生成的纯数字ID不必UUID那一大串字符串更合适吗?

很多项目依旧在使用UUID,是有其他什么方面的考量吗?

阅读 1.6k
3 个回答

我认为没啥考量,只是单纯的简单而已。

如果没啥影响(有序/性能?安全?),我认为使用UUID也没啥问题。

我印象里雪花ID也是一大串啊……

选择 UUID 是因为简单易用吧,如果不考虑有序性的话。而且很多语言都原生支持UUID v4的生成。

雪花本身的缺点
雪花相对麻烦一点,有依赖,比如数据库或其他存储机器号啥的;还有时钟回拨问题,另外时间用个十几年就到头了,等等。

使用雪花不当的很多场景
非常多人只是为了用而用,用了雪花后数据库存个string,那和uuid有啥区别?
用long存由于前端js不支持大整数又得做一点适配,又麻烦了一点。
最重要的是,他们的业务根本没有这么大的性能需求,也没有有序的需求,所以uuid对他们来说就是简单省事的一个选择

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏