UUID는 분산 컴퓨팅 환경에서 중앙 통제 없이 개별적으로 고유의 id를 생성하기 위해 사용되는 식별자 입니다.
550d6400-e2zb-8g47-a716-446658772266
UUID 버전은 1, 3, 4, 5가 있습니다. 타임스탬프을 사용하는 버전1, 랜덤값을 사용하는 버전4를 주로 사용합니다. 버전 3, 5는 각각 md5, sha-1 해쉬를 사용합니다.
사용할 UUID 라이브러리 입니다.
go get github.com/google/uuid
라이브러리를 다운받고, mod파일을 확인합니다.
버전4 UUID 만들기
import (
"github.com/google/uuid"
)
uuid 라이브러리를 임포트 합니다.
다음 함수로 uuid를 만듭니다.
uuid.NewString() // uuid string
// or
u, err := uuid.NewRandom() // v4 uuid
if err != nil {
panic(err)
}
u.String() // uuid string
ex)
func TestUUID(t * testing.T) {
t.Log(uuid.NewString())
}
=== RUN TestUUID
/home/dev/project/xlog/xuth/lib/xjwt/tokk_test.go:64: 78142f09-69eb-4f77-ab6a-019332f6da99
--- PASS: TestUUID (0.00s)
PASS
버전1 UUID 만들기
u, err := uuid.NewUUID() //v1 uuid
if err != nil {
panic(err)
}
u.String() // uuid string