1
xieqiqiang00 2022-08-09 09:40:29 +08:00
有没有可能,这不是自增 id ?
而是类似 hash 的字符串? |
2
SuperXRay 2022-08-09 09:40:49 +08:00
为什么觉得是 int 的?
|
3
sarices 2022-08-09 09:40:59 +08:00
参考一下 美团 leaf 或者 Twitter 的雪花算法
|
4
zonyitoo 2022-08-09 09:42:44 +08:00 6
7129539941947671076 用 16 进制表示就是 0x62f136cda3c00224 ,可以发现恰好是 8 个字节 62f1 36cd a3c0 0224 。估计只是一个普通的 64-bits ID 而已,不一定是顺序生成的,里面应该包含了信息,比如时间戳之类的。
拍个脑袋,也许就是直接用 snowflake 生成的 :) |
5
ily433664 2022-08-09 09:43:05 +08:00
雪花算法
|
6
q1119145488 2022-08-09 09:43:34 +08:00
分布式 ID ,可以了解一下其中一种-雪花 id
|
7
xytest 2022-08-09 09:47:47 +08:00
Snowflake
|
8
nitmali 2022-08-09 09:51:30 +08:00
再不济 也应该是 long 嘛
|
9
fzdwx 2022-08-09 10:05:32 +08:00
19 位,属于正常的长度。
|
10
IDAEngine 2022-08-09 10:10:30 +08:00
Snowflake
|
11
yohole 2022-08-09 10:30:29 +08:00
确实,为啥 OP 会觉得是 int 啊?不解
|
12
FightPig 2022-08-09 10:36:24 +08:00
这肯定不是 int 的,分布式生成的 ID 吧
|
13
xbh1794970183564 2022-08-09 10:38:05 +08:00
用的是分布式生成器生成的,对应 go 中的 int64
|
14
Jooooooooo 2022-08-09 10:38:14 +08:00
很长的数字几乎都是雪花.
|
15
wu00 2022-08-09 10:44:49 +08:00
Snowflake
是顺序的 int 范围 -2147483648~2147483647 js 中 Number.MAX_VALUE=1.7976931348623157e+308 ,注意精度丢失问题 |
16
autulin 2022-08-09 11:25:21 +08:00 via iPhone
雪花算法+int64
|
19
infun 2022-08-09 12:15:11 +08:00
|
20
WhateverYouLike 2022-08-09 12:37:19 +08:00 via Android
@wu00 前两天写 js 就遇到了,丢精度
|
21
beordle 2022-08-09 13:22:04 +08:00
如果是数字的话,实际上你可以使用数字爬取到全部文章了,这是一个严重的安全漏洞。那么利用它,要不他不存在。你不妨试一试。
|
22
meteor957 2022-08-09 13:23:09 +08:00
是 char 吧
|
23
yujinchn 2022-08-09 13:33:02 +08:00
明显不是自带的自增 id 啊
|
24
mengyx 2022-08-09 13:43:47 +08:00 via Android
分布式 ID 生成器,基于时间、机器 ID 、序号等生成的 int64 ,类似的可以看看 Snowflake
|
25
vace 2022-08-09 14:02:07 +08:00
随便打开一个列表页面,在控制台输入下面的代码,就能获取到 64bit 的 snowflake ID 列表了。
```js $$('.title').map(t => t.href).filter(Boolean).map(t => t.match(/\/(\d+)\//)?.[1]).map(t => t && BigInt(t).toString(2)) ``` |
26
xiaoliu926 2022-08-09 14:08:01 +08:00
正好我司去年底数据库表 id 使用了雪花算法,生成的 id 就是随机一大串
|
27
xiaoliu926 2022-08-09 14:09:46 +08:00
可以肯定地说这就是数据库表的主键 id. Long 型
|
28
xuelu520 2022-08-09 14:35:37 +08:00
百度雪花算法。一个不规则 ID 生成算法。现在大部分都用的这个吧,简单高效,轮子也多。
|
29
Akitora 2022-08-09 14:41:33 +08:00
肯定不是连续的,推特也是这样,估计也有反爬虫的考量
|
30
unclejock 2022-08-09 18:26:25 +08:00 1
你为什么觉得它是 int ?这是个很关键的问题
|
31
victorc 2022-08-09 21:59:23 +08:00
int64 ,用类似雪花算法的 id 生成器生成的,字节所有的 id 都是这样产生的
|
32
xiangyuecn 2022-08-09 22:04:39 +08:00
@wu00 #15 Number.MAX_SAFE_INTEGER 🐶
|
33
wcp1231 2022-08-10 09:54:30 +08:00
也有可能 ID 是从 7129539941947671000 开始递增的,所以有可能头条只有 76 篇文章 (doge
|
34
Konys 2022-08-10 11:12:59 +08:00
美团修改后的雪花算法,不是自增+1 的,但是确实是不断向前增大的,我记得是美团有专门的服务器用来生成这个 id ,其他项目请求这个服务器获取 id ,大概是这么个意思,很久之前看的美团的技术文章
|
35
symons 2022-08-12 15:24:32 +08:00
1. 这种 id 是不可遍历的自增的 id
2. 服务端存储用 big int 3. 跟前端交互用 string ,否则会丢精度 |