kaonmir
시리즈
SAA
DOP
System Design Interview
Linux
ETC
Share
Sign In
Home
Kaonmir (손성훈)
Copy & Translate
시리즈
SAA
후기
시험 소개 & 꿀팁
Terminology
Region & Availability Zone
Budget
IAM
EC2 - Fundamentals
EC2 - SAA Level
EC2 Storage
ELB & ASG
RDS / Aurora / ElastiCache
S3
CloudFront & Global Accelerator
Route 53
Storage Extras
Decoupling
Container
Serverless
Database
Monitoring, Troubleshooting & Audit
IAM Advanced
Security & Encryption
VPC
Disaster Recovery & Migrations
Ohter Services
기술 백서 총 모음
기술 백서(White paper)
DOP
CodeCommit, CodeBuild, CodeDeploy
CodePipeline, CodeStar, Jenkins
CloudFormation - Fundamentals
CloudFormation - DOP Level
Elastic Beanstalk
Lambda & Step Function & API Gateway
ECS & ECR & OpsWorks
Kinesis
CloudWatch
CloudTrail & X-Ray & ElasticSearch & Tagging
SSM & Config & Service Catalog & Inspector
Other Services
Auto Scaling Group (ASG)
DynamoDB & S3
Multi AZ & Multi Region & Multi Account
AWS Organizations & On-Premise Strategy
Disaster Recovery (DR)
서비스별 기본 배포 전략 비교
CodeDeploy appspec hook
System Design Interview
사용자 수에 따른 규모 확장성
개략적인 규모 추정
시스템 설계 면접 공략법
처리율 제한 장치
안정 해시
키-값 저장소
분산 시스템을 위한 유일 ID 생성기
URL 단축기
웹 크롤러
알림 시스템
뉴스 피드 시스템
채팅 시스템
검색어 자동완성 시스템
유튜브
구글 드라이브
Linux
ETC
AI를 더 잘 쓰기 위한 IT 용어
Subscribe
분산 시스템을 위한 유일 ID 생성기
1. 다중 마스터 복제
새로운 레코드를 만들 때마다 k(서버 수)만큼 증가한 값을 ID로 쓴다.
서로 영향을 끼치지 않고 ID를 만들기 때문에 성능이 보장된다.
단점
여러 데이터 센터에 걸쳐 규모를 늘리기 어렵다.
서버의 추가 및 삭제가 어렵다.
ID가 시간 흐름에 맞추어 커지도록 보장할 수 없다.
2. UUID (Universally Unique Identifier)
충돌 가능성이 지극히 낮은 128비트 문자열
서버의 조율 없이 각자 만들 수 있다.
장점
단순하고 동기화 이슈가 없다.
확장에 용이하다.
단점
128비트로 비교적 길다.
시간과 연관성이 없다.
숫자만 있지 않고 문자도 포함된다.
3. 티켓 서버
ID를 만드는 서버를 따로 두고 이 서버에서 DB에게 ID값을 준다.
장점
유일성이 보장된다.
단점
SPOF 문제 발생
티켓 서버를 여러 대 두면 동기화 문제 발생
4. 트위터 스노우플레이크
패킷 구성하듯
64
비트를 여러 구역으로 쪼개서 값을 부여한다.
01
sign bit : 일단 예약 비트이다.
41
timestamp : epoch(아무 시간이나 정함) 이후 millisecond
05
datacenter id : 총 32개의 데이터센터를 표시
05
server id : 데이터센터당 32개의 서버를 표시
12
serial number : 각 서버에서 이 숫자를 1씩 증가
특징
타임스탬프가 제일 앞에 있기 때문에 시간에 따른 정렬이 가능하다.
타임스탬프는
2^{41}-1
밀리초, 즉 69년만 측정 가능하다.
일렬번호가 의미하는 것 : 한 서버가 1ms 내에 최대 2^12개의 ID를 만들 수 있다.
동시성이 적은 어플리케이션의 경우 일렬번호를 줄일 수 있다.
또 데이터센터와 서버 수도 적절히 예측해 조절한다.
Made with SlashPage