본문 바로가기

독서4

4장. 처리율 제한 장치의 설계 네트워크 시스템에서 처리율 제한 장치(rate limiter)는 클라이언트 또는 서비스가 보내는 트랙의 처리율 을 제어하기 위한 장치이다. 처리율 제한 장치의 사용 예시HTTP는 특정 기간 내에 전송되는 클라이언트의 요청 횟수를 제한함API 요청 횟수가 제한 장치에 정의된 임계치를 넘어서면 추가로 도달한 모든 호출은 처리가 중단됨e.g) 사용자는 초당 2회 이상 새 글을 올릴 수 없음e.g) 같은 IP 주소로는 하루에 10개 이상의 계정을 생성할 수 없음e.g) 같은 디바이스로는 주당 5회 이상 리워드를 요청할 수 없음 처리율 제한 장치 사용 장점DoS(Denial of Service) 공격에 의한 자원 고갈을 방지비용 절감추가 요청에 대한 처리를 제한하면 서버를 많이 두지 않아도 되며, 우선순위가 높은.. 2024. 6. 25.
3장. 시스템 설계 면접 공략법 효과적 면접을 위한 4단계 접근법1단계. 문제 이해 및 설계 범위 확정 깊이 생각하고 질문하여 요구사항과 가정들을 분명히 하자 2. 개략적인 설계안 제시 및 동의 구하기개략적인 설계안을 제시하여 면접관의 동의를 얻자. 이 과정에서 면접관과 협력하면 좋다.가능하다면 시스템의 구체적 사용 사례도 찾아보자. 3. 상세 설계설계 대상 컴포넌트 사이의 우선순위를 정하자.시간 관리를 위해 불필요한 세부사항에 시간을 사용하지 말자. 4. 마무리설계한 시스템에 대해 개선 가능한 지점을 찾아내보자.여러 해결책을 제시한 경우 설계에 대해 다시 한 번 요약하는 것이 도움이 될 수 있다.오류가 발생하면 무슨 일이 생기는지 따져보는 것도 좋다.운영 이슈에 대해서도 고려해보자.메트릭은 어떻게 수집하고 모니터링은? 로그는? 시스템.. 2024. 6. 20.
2장. 개락적인 규모 추정 효과적인 개략적 규모 추정을 위해서는 규모 확장성을 표현하는데 필요한 기본기에 능숙해야 한다. 특히 2의 제곱수, 응답지연 값, 가용성에 관계된 수치들을 기본적으로 잘 이해하고 있어야 한다. 2의 제곱수분산 시스템에서 다루는 데이터 양은 엄청나게 커질 수 있으나, 계산법은 기본을 크게 벗어나지 않는다. 제대로 된 계산 결과를 얻기 위해서는 데이터 볼륨의 단위를 2의 제곱수로 표현하면 어떻게 되는지 알아야 한다.데이터의 최소 단위는 1바이트이고, 8비트로 구성된다. ASCII 문자 하나가 차지하는 메모리 크기는 1바이트이다.2의 x 제곱근사치이름축약형101천1킬로바이트1KB201백만1메가바이트1MB3010억1기가바이트1GB401조1테라바이트1TB501000조1페타바이트1PB 모든 프로그래머가 알아야 하는 .. 2024. 6. 20.
1장. 사용자 수에 따른 규모 확장성 단일 서버단일 서버란 모든 컴포넌트가 단 한 대의 서버에서 실행되는 시스템이다. 웹, 앱, 데이터베이스, 캐시 등이 전부 한 대의 서버에서 실행된다. 데이터베이스단일 서버 시스템은 사용자가 많아지게 되면 충분하지 않다. 단일 서버 시스템에서 트래픽 처리 서버와 데이터베이스 서버를 분리하면 각각을 독립적으로 확장해나갈 수 있게 된다. 그렇다면 어떤 데이터베이스를 사용해야 될까?정답은 정해져 있지 않다. 구축하려는 시스템에 바람직한 데이터베이스를 선택해야 한다. 데이터베이스는 관계형데이터베이스와 비-관계형 데이터베이스 사이에서 선택할 수 있다. 각 데이터베이스의 특징은 다음과 같다.관계형 데이터베이스(RDBMS)MySQL, ORACLE, PostgreSQL, ...자료를 테이블과 열, 칼럼으로 표현여러 테이.. 2024. 6. 19.