# EasySnowFlakes **Repository Path**: MUMU-DADA/EasySnowFlakes ## Basic Information - **Project Name**: EasySnowFlakes - **Description**: 适用于前端number数值安全范围内的可以直接使用的基于snowflakes算法的唯一ID生成库 - **Primary Language**: Go - **License**: WTFPL - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2022-03-10 - **Last Updated**: 2022-06-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: Go语言 ## README # EasySnowFlakes #### 介绍 适用于前端number数值安全范围内的可以直接使用的基于snowflakes算法的唯一ID生成库 基本用法: ```go package main import ( "fmt" "log" "gitee.com/MUMU-DADA/EasySnowFlakes" ) var ESF *EasySnowFlakes.EasySnowFlake func InitESF() (err error) { // 不需要使用id分发服务器的话直接 ESF, err = EasySnowFlakes.NewEasySnowFlake(EasySnowFlakes.Settings{}) 即可 ESF, err = EasySnowFlakes.NewEasySnowFlake(EasySnowFlakes.Settings{ UseNetMachineNum: true, NetMachineServerAddr: EasySnowFlakes.NewNetMachineServerSetting("127.0.0.1", "8080", "debug", false), }) if err != nil { return err } return nil } func GetID() (uint64, error) { id, err := ESF.NextID() if err != nil { return 0, err } return id, nil } func main() { err := InitESF() if err != nil { log.Fatal(err) } id, err := GetID() if err != nil { log.Fatal(err) } fmt.Printf("%b, %d\n", id, id) // 1110000111001111100000000000000000000000, 969848913920 } ```