You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
865 B
865 B
基于数据库的 auto_increment 自增ID完全可以充当 分布式ID 。当我们需要一个ID的时候,向表中插入一条记录返回主键ID,但这种方式有一个比较致命的缺点,访问量激增时MySQL本身就是系统的瓶颈,用它来实现分布式服务风险比较大,不推荐。相关SQL如下:
CREATE DATABASE `SEQ_ID`;
CREATE TABLE SEQID.SEQUENCE_ID (
id bigint(20) unsigned NOT NULL auto_increment,
value char(10) NOT NULL default '',
PRIMARY KEY (id),
) ENGINE=MyISAM;
insert into SEQUENCE_ID(value) VALUES ('values');
优点
- 实现简单,ID单调自增,数值类型查询速度快
缺点
- DB单点存在宕机风险,无法扛住高并发场景
适用场景
- 小规模的,数据访问量小的业务场景
- 无高并发场景,插入记录可控的场景