📖
Aaron's TECH BOOK
  • Intro
    • About me
  • Lecture
    • Kubernetes
      • Begin Kubernetes
    • Kafka
      • Begin Kafka
    • Kotlin
      • TDD, Clean Code Preview
      • woowa Kotlin
    • Java
      • Multithread Concurrency
      • The Java
    • Toby
      • Toby Spring 6
      • Toby Spring Boot
    • MSA
      • 01.Micro Service
      • 02.DDD 설계
      • 03.DDD 구현
      • 04.EDA 구현
    • Spring Boot
    • Spring Batch
    • Spring Core Advanced
    • Spring DB Part II
    • Spring DB Part I
    • JPA API and Performance Optimization
    • JPA Web Application
    • JPA Programming Basic
    • Spring MVC Part 2
      • 01.Thymeleaf
      • 02.ETC
      • 03.Validation
      • 04.Login
      • 05.Exception
    • Spring MVC Part 1
      • 01.Servlet
      • 02.MVC
    • Http
      • 01.Basic
      • 02.Method
      • 03.Header
    • Spring Core
    • Study
      • Concurrency issues
      • First Come First Served
      • Performance Test
      • TDD
      • IntelliJ
  • Book
    • Kafka Streams in Action
      • 01.카프카 스트림즈
      • 02.카프카 스트림즈 개발
      • 03.카프카 스트림즈 관리
    • Effective Kotlin
      • 01.좋은 코드
      • 02.코드 설계
      • 03.효율성
    • 이벤트 소싱과 MSA
      • 01.도메인 주도 설계
      • 02.객체지향 설계 원칙
      • 03-04.이벤트 소싱
      • 05.마이크로서비스 협업
      • 06.결과적 일관성
      • 07.CQRS
      • 08.UI
      • 09.클라우드 환경
    • 몽고DB 완벽 가이드
      • I. 몽고DB 시작
      • II. 몽고DB 개발
    • Kotlin Cookbook
      • 코틀린 기초
      • 코틀린 기능
      • ETC
    • Kotlin in Action
      • 함수/클래스/객체/인터페이스
      • 람다와 타입
      • 오버로딩과 고차 함수
      • 제네릭스, 애노테이션, 리플렉션
    • Kent Beck Tidy First?
    • 대규모 시스템 설계 기초
      • 01.사용자 수에 따른 규모 확장성
      • 02.개략적인 규모 추정
      • 03.시스템 설계 공략법
      • 04.처리율 제한 장치 설계
      • 05.안정 해시 설계
      • 06.키-값 저장소 설계
      • 07.유일 ID 생성기 설계
      • 08.URL 단축기 설계
      • 09.웹 크롤러 설계
      • 10.알림 시스템 설계
      • 11.뉴스 피드 시스템 설계
      • 12.채팅 시스템 설계
      • 13.검색어 자동완성 시스템
      • 14.유튜브 설계
      • 15.구글 드라이브 설계
      • 16.배움은 계속된다
    • 실용주의 프로그래머📖
    • GoF Design Patterns
    • 도메인 주도 개발 시작하기
      • 01.도메인 모델 시작하기
      • 02.아키텍처 개요
      • 03.애그리거트
      • 04.리포지터리와 모델 구현
      • 05.Spring Data JPA를 이용한 조회 기능
      • 06.응용 서비스와 표현 영역
      • 07.도메인 서비스
      • 08.애그리거트 트랜잭션 관리
      • 09.도메인 모델과 바운디드 컨텍스트
      • 10.이벤트
      • 11.CQRS
    • Effective Java 3/E
      • 객체, 공통 메서드
      • 클래스, 인터페이스, 제네릭
    • 소프트웨어 장인
    • 함께 자라기
    • Modern Java In Action
      • 01.기초
      • 02.함수형 데이터 처리
      • 03.스트림과 람다를 이용한 효과적 프로그래밍
      • 04.매일 자바와 함께
    • Refactoring
      • 01.리펙터링 첫 번째 예시
      • 02.리펙터링 원칙
      • 03.코드에서 나는 악취
      • 06.기본적인 리펙터링
      • 07.캡슐화
      • 08.기능 이동
      • 09.데이터 조직화
      • 10.조건부 로직 간소화
      • 11.API 리팩터링
      • 12.상속 다루기
    • 객체지향의 사실과 오해
      • 01.협력하는 객체들의 공동체
      • 02.이상한 나라의 객체
      • 03.타입과 추상화
      • 04.역할, 책임, 협력
      • 05.책임과 메시지
      • 06.객체 지도
      • 07.함께 모으기
      • 부록.추상화 기법
    • Clean Code
    • 자바 ORM 표준 JPA 프로그래밍
Powered by GitBook
On this page
  • 실세계 시스템들
  • 회사별 엔지니어링 블로그
  • 시스템 설계 문제에 관한 링크 모음
  1. Book
  2. 대규모 시스템 설계 기초

16.배움은 계속된다

대규모 시스템 설계 기초 16장을 요약한 내용입니다.

Last updated 1 year ago

좋은 시스템을 설계하려면 다년간 많은 지식을 쌓아야 한다.

  • 실세계에서 쓰이는 시스템의 구조를 공부하는 것은 지식을 쌓는 지름길이다.

  • 각 기술을 공부하고 그 기술이 어떤 문제를 푸는지 이해하는 것은, 지식의 토대로 견고하게 하고 설계 프로세스를 다듬는 아주 좋은 방법이다.

실세계 시스템들

여러 회사에서 실제로 사용되는 시스템이 어떻게 설계되었는지 감을 잡는 데 도움이 될 수 있는 자료들

Facebook

  • 페이스북 타임라인: 비정규화의 힘

  • 페이스북에서의 규모 확장성

  • 타임라인: 한 사람의 인생을 담기에 충분한 규모 확장성

  • 페이스북에서 Erlang을 사용하는 방법

  • 페이스북 채팅

  • 건초더미에서 바늘 찾기: 페이스북의 사진 저장소

  • 페이스북 멀티피드

  • 페이스북 멤캐시 시스템의 규모 확장성

  • TAO: 페이스북의 소셜 그래프 분산 저장소

  • 페이스북이 $19B에 사들인 왓츠앱의 아키텍처

Amazon

  • 아마존 아키텍처

  • 다이나모: 아마존의 고가용성 키-값 저장소

Netflix

  • 넷플릭스 기술 스택을 모든 각도에서 살펴보기

  • 결국 A/B 테스팅 문제: 넷플릭스의 실험 지원 플랫폼

  • 넷플릭스 추천 시스템 (1부)

  • 넷플릭스 추천 시스템 (2부)

Google

  • 구글 아키텍처

  • 구글 파일 시스템

  • 차이 기반 동기화(델타 동기화)

  • 유튜브 아키텍처

  • 유튜브의 규모 확장성

  • 빅테이블: 구조화된 데이터를 위한 분산 저장소 시스템

Instagram

  • 인스타그램 아키텍처

Twitter

  • 트위터는 어떻게 150M 활성 사용자를 감당할 시스템을 만들었나

  • 트위터 규모 확장하기: 트위터를 10000배 빠르게 만든 비결

  • 스노플레이크

  • 타임라인과 규모 확장성 문제

Uber

  • 우버는 실시간 마켓 플랫폼의 규모를 어떻게 늘렸나

Pinterest

  • 핀터 페스트의 규모확장성

  • 핀터레스트아키텍처 업데이트

LinkedIn

  • 링크드인이 규모 확장성을 어떻게 성취해 왔는지에 대한 간략한 보고서

Flickr

  • 플리커 아키텍처

Dropbox

  • 우리는 드롭박스의 규모를 어떻게 확장했나

회사별 엔지니어링 블로그

정기적으로 살펴보는 습관을 들여 놓으면 더 나은 엔지니어가 되는 데 많은 도움을 얻을 수 있을 것이다.

시스템 설계 문제에 관한 링크 모음

Facebook Timeline: Brought to You by the Power of Denormalization
Scale at Facebook
Building Timeline: Scaling up to hold your life story
Erlang at Facebook
Facebook Chat
Finding a needle in Haystack: Facebook’s photo storage
Serving Facebook Multifeed: Efficiency, performance gains through redesign
Scaling Memcache at Facebook
TAO: Facebook’s Distributed Data Store for the Social Graph
The WhatsApp Architecture Facebook Bought For $19 Billion
Amazon Architecture
Dynamo: Amazon’s Highly Available Key-value Store
A 360 Degree View of the Entire Netflix Stack
It’s All A/Bout Testing: The Netflix Experimentation Platform
Netflix Recommendations: Beyond the 5 stars (Part 1)
Netflix Recommendations: Beyond the 5 stars (Part 2)
Google Architecture
The Google File System
Differential Synchronization
YouTube Architecture
Seattle Conference on Scalability: YouTube Scalability
Bigtable: A Distributed Storage System for Structured Data
Instagram Architecture: 14 Million users, Terabytes of Photos, 100s of Instances, Dozens of Technologies
The Architecture Twitter Uses to Deal with 150M Active Users, 300K QPS, a 22 MB/S Firehose, and Send Tweets in Under 5 Seconds
Scaling Twitter: Making Twitter 10000 Percent Faster
Announcing Snowflake
Timelines at Scale
How Uber Scales Their Real-time Market Platform
Scaling Pinterest - From 0 to 10s of Billions of Page Views a Month in Two Years
Pinterest Architecture Update - 18 Million Visitors, 10x Growth,12 Employees, 410 TB of Data
A Brief History of Scaling LinkedIn
Flickr Architecture
How We've Scaled Dropbox
Google
Groupon
Github
Nextdoor
Netflix
Docker
Dropbox
Reddit
Kinkedin
Mixpanel
Bittorrent
Soundcloud
Thumbtack
Salesforce
Shopify
Slack
Stripe
Spotify
Amazon
Asana
Atlassian
Yahoo
Airbnb
Uber
Yelp
eBay
Instagram
Instacart
Zoom
Quora
Cloudera
Twitter
Facebook
PayPal
Pinterest
Highscalability
system-design-primer