| 000 | 00000cam c2200205 c 4500 | |
| 001 | 000046210246 | |
| 005 | 20251016141133 | |
| 007 | ta | |
| 008 | 251016s2025 ulka 001c kor | |
| 020 | ▼a 9791140715923 ▼g 93000 | |
| 035 | ▼a (KERIS)BIB000017311210 | |
| 040 | ▼a 241044 ▼c 241044 ▼d 211009 | |
| 041 | 1 | ▼a kor ▼h eng |
| 082 | 0 4 | ▼a 005.12 ▼2 23 |
| 085 | ▼a 005.12 ▼2 DDCK | |
| 090 | ▼a 005.12 ▼b 2025z1 | |
| 100 | 1 | ▼a Sinha, Dhirendra |
| 245 | 2 0 | ▼a (요즘 개발자를 위한) 시스템 설계 수업 : ▼b 기초 개념부터 X·인스타그램·구글 독스·넷플릭스 사례 학습과 면접 대비까지 / ▼d 디렌드라 신하, ▼e 테자스 초프라 지음 ; ▼e 양문규 옮김 |
| 246 | 1 9 | ▼a System design guide for software professionals : ▼b build scalable solutions from fundamental concepts to cracking top tech company interviews |
| 260 | ▼a 서울 : ▼b 길벗, ▼c 2025 | |
| 300 | ▼a 472 p. : ▼b 삽화 ; ▼c 24 cm | |
| 500 | ▼a 색인수록 | |
| 650 | 0 | ▼a Computer software ▼x Development |
| 650 | 0 | ▼a Software architecture |
| 700 | 1 | ▼a Chopra, Tejas, ▼e 저 |
| 700 | 1 | ▼a 양문규, ▼e 역 |
| 900 | 1 0 | ▼a 신하, 디렌드라, ▼e 저 |
| 900 | 1 0 | ▼a 초프라, 테자스, ▼e 저 |
| 945 | ▼a ITMT |
소장정보
| No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
|---|---|---|---|---|---|---|---|
| No. 1 | 소장처 과학도서관/Sci-Info(1층서고)/ | 청구기호 005.12 2025z1 | 등록번호 121270446 (3회 대출) | 도서상태 대출중 | 반납예정일 2026-04-13 | 예약 예약가능 | 서비스 |
컨텐츠정보
책소개
시스템 설계의 기초 개념부터 분산 시스템과 서비스 설계까지, 실무자가 알아야 할 시스템 설계의 기본 요소를 빠짐없이 다루고 있다. 로드 밸런서, 데이터베이스, 스토리지, 캐싱, 큐, DNS까지 시스템 아키텍트라면 꼭 알아야 할 개념과 지식을 실용적인 순서로 모두 담았으며, 풍부한 도표, 일러스트가 함께 제공되므로 쉽고 빠르게 실무 지식을 쌓을 수 있다. 특히 X, 인스타그램, 구글 독스, 넷플릭스 등 실제 서비스를 예시로 들어 사용자에게 인기 있는 대규모 서비스를 설계하는 방법을 배우므로 이해하고 기억하기 쉽다.
또한 앞에서 체계적이고 효율적인 흐름으로 학습했던 핵심 개념을 곧바로 면접에 활용할 수 있도록 빅테크 면접 가이드와 커닝 페이퍼를 함께 수록했다. 시스템 설계의 A부터 Z까지를 모두 담은 이 책으로 기초 개념부터 기업 사례 학습과 면접 대비까지 한 권으로 마스터해 보자.
잘 나가는 서비스는 이렇게 만든다
기초 개념부터 실전 아키텍처 설계, 빅테크 면접까지 한 권으로!
개발자라면 꼭 알아야 할 시스템 설계의 정석
이 책은 시스템 설계를 위한 입문서로, 시스템 설계 전반에 대한 길잡이가 되어주는 것을 목표로 한다. 분산 시스템의 기초 이론부터 CAP 정리, 블룸 필터 등 핵심 알고리즘까지 다루며 탄탄한 이론적 토대를 제공한다. ‘시스템 설계 기초 → 분산 시스템 이론 → 핵심 구성 요소 → 실제 서비스 설계 → 면접 대비 팁’이라는 선형적이고 효율적인 순서로 개념과 실무를 동시에 학습하게 도와주며 동시에 면접 답변력과 이해도 강화에도 도움을 준다.
X, 인스타그램, 구글 독스, 넷플릭스 등 실제 사례로 배우는 시스템
이 책의 강점은 다음과 같다. 첫째, 시스템 설계 단계를 하나씩 따라가며 실제 환경에서 시스템 설계 원칙이 어떻게 쓰이는지 체득한다. 둘째, X(트위터), 인스타그램, 구글 독스, 넷플릭스 등 실생활에서 자주 접하는 유명한 서비스를 예시로 들어 기능적 요구 사항부터 시스템 규모 산정, 사용자 서비스 설계까지 모두 배운다. 셋째, 다양한 그림과 도표 자료, 역자의 비유로 초보자도 쉽게 이해할 수 있다. 단순한 코드 작성자에서 벗어나 시스템 설계자로 성장하고 싶은 개발자라면 핵심 개념부터 실전 사례까지 모두 담긴 이 책과 함께 한 단계 성장해 보자.
정보제공 :
저자소개
디렌드라 신하(지은이)
현재 구글Google에서 소프트웨어 엔지니어링 매니저로 재직 중이다. 엔젤 투자자로도 활동하며, 여러 스타트업에서 전략 및 기술 고문 역할을 맡아 왔다. 약 20년에 걸쳐 소프트웨어 엔지니어링 분야에서 복잡하고 고도로 확장 가능한 분산 시스템을 구축하고, 다수의 엔지니어링 팀을 이끈 풍부한 경험이 있다. 시스코 시스템즈Cisco Systems, 오라클Oracle, 야후Yahoo! 등 글로벌 대기업은 물론 초기 및 성장 단계의 스타트업에서도 리더십을 발휘하며 다양한 역할을 수행해 왔다.
테자스 초프라(지은이)
넷플릭스Nexflix의 시니어 소프트웨어 엔지니어로, 추천 및 개인화 서비스를 위한 머신러닝 플랫폼 구축을 담당하고 있다. 클라우드 컴퓨팅, 블록체인, 머신러닝, 소프트웨어 개발, 엔지니어링 리더십 분야에서 폭넓은 전문성을 갖췄으며 여러 기술 컨퍼런스와 패널 세션에서 발표 활동을 이어가고 있다. 2023년에는 인도 성취자 포럼Indian Achievers’ Forum으로부터 국제 성취자상International Achievers Award을 수상했으며, 현재 미국 애리조나의 어드밴싱 테크놀로지 대학교University of Advancing Technology에서 소프트웨어 개발 부문 겸임교수로 재직 중이다.
양문규(옮긴이)
컴퓨터 공학과를 졸업하고 2017년에 웹 프런트엔드 개발자로 커리어를 시작했다. 전공자라면 누구나 선택하는 길이 내 길인지 고민하면서 2018년에 겨우 졸업장을 받았다. 다행히도 그때의 패기와 자신감이 오만함으로 이어지지 않았다는 걸 어린 개발자 시절에 깨달았다. 훌륭한 선배, 후배, 동료들과 많은 가르침과 조언을 주고받으며 나도 좋은 영향을 주는 개발자가 되고 싶다는 생각을 하게 됐다. 블로그를 운영하며 개발을 잘하는 것과 잘 설명하는 것은 다르다는 걸 알게 되었고, 다른 사람의 생각을 알아가는 게 즐겁다. 최근에 가장 많이 하는 말은 “내가 할 수 있다면 당신도 할 수 있다”이다. 최근 번역한 책으로는 『단위 테스트의 기술』(길벗, 2024)이 있다.
목차
1부 시스템 설계 기초 1장 시스템 설계의 기본 1.1 시스템 설계의 정의 1.2 시스템 설계의 다양한 유형 1.3 업계에서 시스템 설계가 갖는 중요성 1.4 시스템 설계의 중요성을 엿볼 수 있는 실제 사례 1.5 요약 2장 분산 시스템의 속성 2.1 호텔 객실 예약 시스템으로 살펴보는 분산 시스템 예시 2.2 일관성 2.3 가용성 2.4 파티션 허용성 2.5 지연 시간 2.6 내구성 2.7 신뢰성 2.8 장애 허용성 2.9 확장성 2.10 요약 3장 분산 시스템의 이론과 데이터 구조 3.1 CAP 정리 3.2 PACELC 정리 3.3 비잔티움 장군 문제 3.4 FLP 불가능성 정리 3.5 일관된 해싱 3.6 블룸 필터 3.7 카운트-민 스케치 3.8 하이퍼로그로그 3.9 요약 2부 분산 시스템의 핵심 구성 요소 4장 분산 시스템의 기본 요소: DNS, 로드 밸런서, 애플리케이션 게이트웨이 4.1 DNS 이해 4.1.1 DNS 쿼리 4.2 DNS의 확장성, 신뢰성, 일관성 4.3 로드 밸런서 4.4 애플리케이션 게이트웨이 4.5 마이크로서비스 아키텍처 4.6 클라우드 네이티브 애플리케이션 게이트웨이 서비스 개요 4.7 온프레미스 옵션 4.8 요약 5장 시스템 구성 요소의 설계 및 구현: 데이터베이스와 스토리지 5.1 데이터베이스 5.2 키-값 저장소 5.3 확장성과 데이터 복제의 최적화 5.4 get 및 put 함수 구현 5.5 키-값 저장소의 장애 허용성과 장애 식별 5.6 시스템 설계 인터뷰: 키-값 저장소 설계 관련 질문과 전략 5.7 DynamoDB 5.8 컬럼 패밀리 데이터베이스 5.9 HBase 5.10 그래프 기반 데이터베이스 5.11 Neo4j 그래프 데이터베이스 5.11.1 Neo4j 자세히 살펴보기 5.12 관계형 모델링과 그래프 모델링 5.13 요약 5.14 참고 자료 6장 분산 캐싱 6.1 캐싱 정의 6.2 분산 캐시 설계 6.3 대표적인 분산 캐시 솔루션 6.4 요약 7장 발행/구독과 분산 큐 7.1 분산 시스템의 발전 과정 7.2 발행/구독 시스템 설계 7.3 카프카 7.4 카프카 스트림 7.5 키네시스 7.6 요약 3부 시스템 설계 실전으로 들어가기 8장 시스템 구성 요소 설계 및 구현: API, 보안, 메트릭 8.1 REST API 8.2 gRPC API 8.3 REST와 gRPC 비교 8.4 API 보안 8.5 분산 시스템 로깅 8.6 분산 시스템에서 메트릭 8.7 분산 시스템에서 알림 8.8 분산 시스템에서 트레이싱 8.9 요약 9장 URL 단축 서비스 설계 9.1 실제 활용 사례 9.2 API 설계 9.3 계산으로 문제 규모 파악 9.4 시스템 설계 9.5 요구 사항 검토 9.6 요약 10장 근접 서비스 설계 10.1 실제 활용 사례 10.2 API 설계 10.3 계산으로 문제 규모 파악 10.4 시스템 설계 10.5 요구 사항 검토 10.6 요약 11장 X 서비스 설계 11.1 기능적 요구 사항 11.2 비기능적 요구 사항 11.3 데이터 모델 11.4 시스템 규모 산정 11.5 고수준 설계 탐구 11.6 트윗 서비스 설계 11.7 사용자 서비스 설계 11.8 타임라인 서비스 세부 설계 11.9 검색 서비스 세부 설계 11.10 기타 고려 사항 11.11 요약 12장 인스타그램 서비스 설계 12.1 기능적 요구 사항 12.2 비기능적 요구 사항 12.3 데이터 모델 설계 12.4 시스템 규모 산정 12.5 고수준 설계 12.6 서비스 세부 설계 12.7 기타 고려 사항 12.8 요약 13장 구글 독스 서비스 설계 13.1 기능적 요구 사항 13.2 비기능적 요구 사항 13.3 데이터 모델 13.4 시스템 규모 산정 13.5 고수준 설계 13.6 마이크로서비스 세부 설계 13.7 기타 검토 사항 및 모범 사례 13.8 요약 14장 넷플릭스 서비스 설계 14.1 기능적 요구 사항 14.2 비기능적 요구 사항 14.3 데이터 모델 14.4 시스템 규모 산정 14.5 고수준 설계 14.6 서비스 세부 설계 14.7 CDN 14.8 요약 15장 시스템 설계 면접 준비를 위한 팁 15.1 시스템 설계 면접을 준비하는 방법 15.2 시스템 설계 면접을 위한 팁 15.3 요약 16장 시스템 설계 커닝 페이퍼 16.1 시스템 설계 면접에서는 어떤 구조를 기반으로 대답해야 할까? 16.2 사용 사례별로 어떤 데이터 저장소를 사용해야 할까? 16.3 사용 사례별로 어떤 데이터 구조를 선택해야 할까? 16.4 사용 사례별로 어떤 컴포넌트를 사용해야 할까? 16.5 사용 사례별로 어떤 프로토콜을 사용해야 할까? 16.6 사용 사례별로 어떤 솔루션을 적용해야 할까? 16.7 요약



