文件名称:gid:Golang分布式ID生成系统,高级,高可用,易扩展的id生成服务
文件大小:45KB
文件格式:ZIP
更新时间:2024-03-31 11:45:43
系统开源
简介 gid是使用golang开发的生成分布式Id系统,基于数据库号段算法实现 HTTP,GRPC对外服务 表现 id从内存生成,如果(step)步长设置的足够大,qps可达到千万+ 可用 id分配依赖mysql,当mysql不可用的,如果内存上还有的可以继续分配 特性 整体唯一的int64型id 分配ID只访问内存 可无限横向扩展 依赖mysql恢复服务Swift...... 安装 初始化mysql create database gid; use gid; create table segments ( biz_tag varchar(128) not null, max_id bigint null, step int null, remark varchar(200) null
【文件预览】:
gid-master
----go.mod(520B)
----service()
--------service_test.go(330B)
--------alloc_manage.go(3KB)
--------alloc_snow_flake_id.go(230B)
--------alloc_test.go(422B)
--------service.go(715B)
--------alloc_id.go(610B)
----go.sum(26KB)
----configs()
--------conf.go(632B)
----library()
--------log()
--------database()
--------net()
--------tool()
----LICENSE(11KB)
----README.md(2KB)
----entity()
--------segments.go(503B)
----repository()
--------segments_all.go(288B)
--------segments_create_test.go(487B)
--------segments_next.go(738B)
--------repository.go(350B)
--------segments_all_test.go(292B)
--------repository_test.go(344B)
--------segments_next_test.go(282B)
--------segments_create.go(634B)
----api()
--------mysql.sql(546B)
--------http()
--------grpc()
----.gitignore(338B)
----server()
--------http()
--------grpc()
----cmd()
--------main.go(440B)
--------client()
--------gid.toml(511B)