분산 환경 ID 생성기 설계
트위터 스노우플레이크 접근법다음과 같이 64비트짜리 ID를 여러가지 섹션으로 구분하는 방법이다. 1비트 : 사인(sign) 비트로, 음/양을 구분한다.41비트 : 타임스탬프로, ID가 생성된 시점의 밀리초를 저장한다.5비트 : 데이터 센터 ID, 2^5 = 32개의 데이터센터를 허용한다.5비트 : 서버 ID, 데이터센터 당 32개의 서버를 허용한다.12비트 : 일련번호, 생성할때마다 1씩 증가 하며, 밀리초가 경과할때마다 0으로 리셋된다. 트위터 스노우플레이크의 한계타임스탬프는 2^41-1 = 2,199,023,255,551밀리초 = 약 69년까지 사용할 수 있다. 69년이 넘어가면 overflow가 발생하므로 이땐 새로운 체계로 아이디를 이전해야 한다. 마스터의 갯수 ID를 고유하게 발급하는 서버를..