Files
go_blog/pkg/util/uuid.go

24 lines
537 B
Go
Raw Normal View History

2024-01-10 16:05:15 +08:00
package util
import (
"fmt"
"time"
2025-06-26 17:46:08 +08:00
"github.com/sony/sonyflake"
2024-01-10 16:05:15 +08:00
)
2025-06-26 17:46:08 +08:00
var t = time.Unix(1594909810, 0) // 基准时间
2024-01-10 16:05:15 +08:00
2025-06-26 17:46:08 +08:00
var flake = sonyflake.NewSonyflake(sonyflake.Settings{
StartTime: t, // 必须设置基准时间否则Sonyflake无法正常初始化
2024-01-10 16:05:15 +08:00
})
func GenSonyFlakeId() uint64 {
uuid, err := flake.NextID()
if err != nil {
2025-06-26 17:46:08 +08:00
fmt.Printf("生成SonyFlake ID失败: %v\n", err) // 明确错误信息
return 0 // 返回0表示生成失败根据业务需求可调整
2024-01-10 16:05:15 +08:00
}
return uuid
}