12장. 전자 지갑 2단계 : 개략적 설계안 제시 및 동의 구하기인메모리 샤딩지갑 애플리케이션은 모든 사용자 계정의 잔액을 유지한다. 이 관계를 나타내는 자료구조로는 해시 테이블을 사용한다 .인메모리 저장소로 인기 있는 선택지 중 하나는 레디스다. 그러나 레디스 노드 한 대로 100만 TPS 처리는 벅차다. 클러스터를 구성하고 사용자 계정을 모든 노드에 균등하게 분산시키는 파티셔닝(partitioning) 또는 샤딩(sharding)을 해야 한다. 클라이언트 A에서 클라이언트 B로 1달러를 이체하라는 명령을 받으면 두 개의 레디스 노드에 두 개의 명령이 전달된다. 첫 번째 업데이트를 끝난 후 두 번째 업데이트 완료하기 전에 지갑 서비스가 죽어버리면 이체는 온전히 마무리하지 못하기 때문에 모두 성공하리라..