Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- golang벤치마크
- Golang디자인패턴
- Vue.js
- Go디자인패턴
- Golang부하테스트
- 디자인패컨
- Iperf3
- vue3
- GO벤치마킹
- 챠트그리기
- golang uuid
- Line차트
- Go벤치마크
- vue3 통신
- Golang성능테스트
- snoflake
- vue3-chartjs
- Go성능테스트
- 리플렉션성능
- GO부하테스트
- go리플렉션성능
- 디자인패턴학습필요성
- GObenchmark
- go로드맵
- Golangbenchmark
- pprof
- vue3 axios
- 대역폭측정하기
- Golang벤치마킹
- line챠트
Archives
- Today
- Total
import ( "코딩", "행복", "즐거움" )
Snowflake, UUID 생성기 본문
Snowflake ID ??
분산 컴퓨팅에서 사용되는 고유 식별 아이디로 사용 한다. Twitter에서 tweet ID를 생성 하기 위해
고안된 Global Unique Object ID 이다.
Snowflake 구조
64비트를 사용 하고, 부호 있는 정수에 맞추기 위해 63비트 까지만 사용 한다.
- 41bits: timestamp ( 시간 )
- 10bits: instance ( 장비 ID로 사용 )
- 12bits: sequence ( 연속된 값 )
인스타그램의 경우 아래와 같음
- 41bits: timestamp ( 시간 )
- 13bits: instance ( 샤드 ID로 사용 )
- 10bits: sequence ( 연속된 값 )
시퀀스 번호는 같은 시간이 나올 경우 증가한다고 알려져 있다.
Golang으로 개발 시 UUID가 필요하다면 아래 링크를 사용!!
https://github.com/zheng-ji/goSnowFlake
GitHub - zheng-ji/goSnowFlake: 一个实现 Twitter SnowFlake 算法 的 Go 分布式 UID 生成器.A threadsafe unique ID gener
一个实现 Twitter SnowFlake 算法 的 Go 分布式 UID 生成器.A threadsafe unique ID generator inspired by Twitter SnowFlake theory - GitHub - zheng-ji/goSnowFlake: 一个实现 Twitter SnowFlake 算法 的 Go 分布式 UID 生成器.A threa...
github.com