본문으로 건너뛰기
AZ Tools

Snowflake ID 디코더 (Discord, Twitter)

Discord·Twitter/X·Instagram Snowflake ID를 생성 타임스탬프, 워커/프로세스 또는 데이터센터, 시퀀스로 디코딩 — 커스텀 에폭 모드 포함 — 브라우저에서.

타임스탬프

UTC2016-04-30T11:18:25.796Z
로컬4/30/2016, 11:18:25 AM
상대10y 5mo 전
에폭 ms1462015105796
원시 타임스탬프41944705796

필드

워커 (5b)1
프로세스 (5b)0
증가값 (12b)7

Discord 에폭 2015-01-01 · Twitter/X 2010-11-04 · Instagram 2011-08-24. ID를 발급한 플랫폼으로 디코딩하세요.

사용법

  1. 플랫폼 선택(Discord·Twitter/X·Instagram·커스텀).
  2. Snowflake ID 붙여넣기 — 예: Discord 사용자 또는 메시지 ID.
  3. 생성 타임스탬프와 워커 / 시퀀스 필드를 읽고, 필요하면 UTC 시간이나 에폭을 복사하세요.

자세한 설명

펼치기

Snowflake는 밀리초 타임스탬프, 머신 식별자, 밀리초당 시퀀스 카운터를 하나의 정렬 가능한 수에 담은 64비트 ID입니다. Discord, Twitter/X, Instagram을 비롯한 많은 분산 시스템이 이를 사용합니다. 이 디코더는 ID를 다시 부분으로 분리합니다: 상위 비트를 시프트해 원시 타임스탬프를 복원하고, 플랫폼의 커스텀 에폭을 더해 실제 UTC 날짜·시각을 얻으며, 하위 비트를 해당 플랫폼이 쓰는 워커·프로세스·데이터센터·샤드·시퀀스 필드로 분해합니다. Discord(에폭 2015-01-01, 5비트 워커 + 5비트 프로세스 + 12비트 증가값), Twitter/X(에폭 2010-11-04, 5+5+12), Instagram(13비트 샤드 + 10비트 시퀀스), 또는 직접 에폭을 정하는 커스텀 중에서 선택하세요. 타임스탬프는 ISO UTC, 로컬 시간, 상대 표시 "x 전", 원시 에폭 밀리초로 표시됩니다. 모든 처리는 로컬에서 실행되며 업로드되지 않습니다.

자주 묻는 질문

Snowflake ID는 어디서 찾나요?

Discord에서는 개발자 모드를 켜고 사용자·메시지·채널·서버를 우클릭해 ID를 복사합니다. Twitter/X에서는 트윗 URL 끝의 긴 숫자입니다. Instagram 미디어 ID는 API가 반환합니다. 이런 긴 숫자 ID는 모두 여기서 디코딩할 수 있습니다.

왜 플랫폼마다 다른 에폭이 필요한가요?

Snowflake의 타임스탬프는 Unix 에폭이 아니라 선택된 '에폭' 이후 밀리초를 세므로 더 적은 비트에 담깁니다. Discord는 2015-01-01, Twitter/X는 2010-11-04, Instagram은 2011-08-24를 씁니다. 잘못된 플랫폼으로 디코딩하면 날짜가 수년 어긋납니다 — ID를 발급한 출처를 고르세요.

워커와 시퀀스 필드는 무엇인가요?

조정 없이 ID를 생성하기 위해 각 머신은 자체 식별자(Discord의 워커/프로세스, Twitter의 데이터센터+워커, Instagram의 샤드)와 같은 밀리초에 생성된 여러 ID에 대해 증가하는 시퀀스 카운터를 넣습니다. 이를 통해 어떤 노드가 ID를 만들었고 대략 얼마나 바빴는지 알 수 있습니다.

타임스탬프는 정확한가요?

네 — 밀리초 타임스탬프가 ID에 직접 인코딩되므로 생성 시각은 밀리초 단위로 정확합니다(생성 서버의 시계가 정확했다는 전제). 상대 시간은 사용자 기기의 현재 시계를 기준으로 계산됩니다.

이 주제의 가이드

관련 도구