扫码关注官方订阅号
https://segmentfault.com/a/11...url后面的1190000000490733是怎么实现的,以及这种方式的好处
以下答案全是猜测,如有雷同,纯属巧合!
有一个类似全局发号器的服务,按固定的系统规则进行发号
前三位是预留的给系统模块用标识符,比如101是问答,119是文章,笔记是133,职位是128,活动是116,收藏夹是123等等或许还有其他模块
然后后面13位相当于预留了万亿数据量,对系统内产生的所有模块所有数据统一做自增
好处是:1.方便数据库按模块分库、分表、分布式等部署2.方便进行服务化架构3.给递归采集全栈数据一定的门槛4.隐藏某个模块的实际数据量5.通过ID前三位快速知道这个数据属于哪个模块6.应该还有...
a应该代表article,你这个网址就代表查看ID为1190000000490733的文章。这种ID是有一些随机生成规则的,目的就是防止用户去猜,防止爬虫去抓。你要是1,2,3,4,5这种整数连着往后排,别人就好猜了
可以使用mysql的uuid_short这个函数生成uuid。当然sf也可以自己定制规则或者使用php的生成uuid的函数实现。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
以下答案全是猜测,如有雷同,纯属巧合!
有一个类似全局发号器的服务,按固定的系统规则进行发号
前三位是预留的给系统模块用标识符,比如101是问答,119是文章,笔记是133,职位是128,活动是116,收藏夹是123等等或许还有其他模块
然后后面13位相当于预留了万亿数据量,对系统内产生的所有模块所有数据统一做自增
好处是:
1.方便数据库按模块分库、分表、分布式等部署
2.方便进行服务化架构
3.给递归采集全栈数据一定的门槛
4.隐藏某个模块的实际数据量
5.通过ID前三位快速知道这个数据属于哪个模块
6.应该还有...
a应该代表article,你这个网址就代表查看ID为1190000000490733的文章。这种ID是有一些随机生成规则的,目的就是防止用户去猜,防止爬虫去抓。你要是1,2,3,4,5这种整数连着往后排,别人就好猜了
可以使用mysql的uuid_short这个函数生成uuid。当然sf也可以自己定制规则或者使用php的生成uuid的函数实现。