从零到千万用户,我是如何一步步优化MySQL数据库的?( 三 )
- ID生成器:生成每张表的主键
- 数据源路由:将每次DB操作路由到不同的分片数据源上
我们系统中ID生成器的设计如下所示 。
文章插图
- 整个ID的二进制长度为64位
- 前36位使用时间戳 , 以保证ID是升序增加
- 中间13位是分库标识 , 用来标识当前这个ID对应的记录在哪个数据库中
- 后15位为自增序列 , 以保证在同一秒内并发时 , ID不会重复 。 每个分片库都有一个自增序列表 , 生成自增序列时 , 从自增序列表中获取当前自增序列值 , 并加1 , 作为当前ID的后15位
- 下一秒时 , 后15位的自增序列再次从1开始 。
【从零到千万用户,我是如何一步步优化MySQL数据库的?】为了适应公司业务的不断发展 , 除了在MySQL数据库上进行相应的架构升级外 , 我们还搭建了一套完整的大数据实时分析统计平台 , 在系统中对用户的行为进行实时分析 。
- 零部件|马瑞利发力电动产品,全球第七大零部件供应商在转型
- 互联网|苏宁跳出“零售商”重组互联网平台业务 融资60亿只是第一步
- 王文鉴|从工人到千亿掌门人,征服华为三星,只因他36年只坚持做一件事
- 手机|这个超强App,让手机快3倍,流畅到起飞
- 同轴心配合|用SolidWorks画一个直角传动,画四个零件就行
- 巅峰|realme巅峰之作:120Hz+陶瓷机身+5000mAh 做到了颜值与性能并存
- 现货供应|卢伟冰说到做到!120Hz+一亿像素,狂销30万首销现货供应
- 精英|业务流程图怎么绘制?销售精英的经验之谈
- 打响|拼多多打响双12首枪,iPhone12降到“mini价”,苹果11再见
- 深度|iPhone12到底值得买吗 深度体验一周我发现了这些