开源项目|Go 开发的一款分布式唯一 ID 生成系统

这是一个使用Go语言开发的分布式唯一ID生成系统,支持HTTP和gRPC两种调用方式。系统依赖MySQL运行,采用雪花算法生成ID。通过提供HTTP接口进行健康检查和ID获取,同时提供了gRPC接口获取ID。项目遵循go-clean-template架构,确保代码解耦和可扩展性。
摘要由CSDN通过智能技术生成
  1. 根据数据库生成 ID。

  2. 根据雪花算法生成 ID。

使用上提供两种方式来调用接口:

  1. HTTP 方式

  2. gRPC 方式

HTTP 方式

1、健康检查:

curl http://127.0.0.1:8080/ping

2、获取 ID:

获取 tag 是 test 的 ID:

curl http://127.0.0.1:8080/v1/id/test

3、获取雪花 ID:

curl http://127.0.0.1:8080/v1/snowid

gRPC 方式

1、获取 ID:

grpcurl -plaintext -d ‘{“tag”:“test”}’ -import-path $HOME/src/id-maker/internal/controller/rpc/proto -proto segment.proto localhost:50051 proto.Gid/GetId

2、获取雪花 ID:

grpcurl -plaintext -import-path $HOME/src/id-maker/internal/controller/rpc/proto -proto segment.proto localhost:50051 proto.Gid/GetSnowId

本地开发

Run MySQL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值