[대규모 시스템 설계] 5장. 안정(일관성 있는) 해시 설계
·
Reference/대규모 시스템 설계
1. 수평적 규모 확장에서 고려할 점 📌 수평적 규모 확장 (Horizontal Scaling, Scale-Out)수평적 규모 확장성을 달성하기 위해서는 요청 또는 데이터를 서버에 균등하게 나눌 수 있어야 한다.클라이언트의 요청이 쏟아질 때, 일부 서버에 요청이 몰리지 않게 균등하게 분배해야 한다.데이터들이 균등하게 서버에 배치되어, 한 곳에 부하가 걸리지 않도록 유지해야 한다. 따라서 이번 논제는 "서버의 규모 확장성을 고려한 해시키 설계 방법"이 되겠다. (수직/수평적 규모 확장의 개념은 1장에서 다뤘음) 📌 이상적인 환경에서 key 설계 방법N개의 캐시 서버가 있을 때, 가장 쉽게 키를 설계하는 방법은 serverIndex를 다음과 같이 설정하는 것이다.serverIndex = hash(key)..