# GenId **Repository Path**: potterjoy/GenId ## Basic Information - **Project Name**: GenId - **Description**: 全局主键分发器 - **Primary Language**: Java - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 10 - **Forks**: 3 - **Created**: 2018-10-10 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # GenId #### 项目介绍 全局主键生成,并提供主键分发, 支持分布式部署。 1. 默认使用SpringCloud框架提供微服务 2. 长度可定制,默认15位即 yyMMdd(年月日6位)+8为位随机增长+1位校验位,每个主键日容量可达千万级,可配置长度增加容量 3. 默认配置单机压测TPS数量级可达10w,修改缓冲池大小,可以继续扩充容量 4. #### gradle 配置参考 https://gitee.com/potterjoy/pub_config #### 软件架构 1. 核心组件采用springboot+mybatis开发,系统采用SpringCloud提供微服务(eureka + feign) 2. 系统采用主动内存分发+异步队列缓冲,保证所有主键均内存主键同步自增实现以达到效率极致 3. #### 安装教程 1. 在数据库执行genid.sql, 配置需要的主键名称及Code 2. 配置genId-server src/main/resources/application.properties中的数据库(如果有配置中心,请配置到配置中心) 3. 配置bootstrap.yml eurekap地址(如果有配置中心,配置配置中心地址) 4、执行 gradle genId-server:package 打jar包,发布并允许jar #### 使用说明 TODO 1. 待完善