시스템 디자인 4

[Review] 시스템 디자인 스터디 5주차 후기

안녕하세요!K-DEVCON (이하 “데브콘”) 그로스 매니저 박종훈입니다.🙋🏻‍♂️ 이 글에서는 10/16 (목)에 진행된 스터디에서 나눈 이야기를 정리합니다. 이번 시간에는 “채팅 시스템 설계” 이야기를 나눴습니다.[1] 채팅 시스템 설계채팅 시스템은 우리가 매일 쓰는 시스템 중 하나입니다. 메시지를 보내고, 파일을 공유하는 이 모든 과정이 너무나 자연스럽고 당연하게 느껴집니다. 하지만 이 편리함 뒤에는 우리가 상상하기 어려운 거대한 기술적 복잡성이 숨어있습니다. 전 세계 수많은 사용자가 동시에 주고받는 수십억 개의 메시지를 안정적으로 처리하기 위해, 엔지니어들은 어떤 문제와 마주하고 또 어떻게 해결했을까요? 기본적인 시스템 설계 채팅 시스템의 기본적인 설계는 다음과 같습니다. 상태 서비스(sta..

[Review] 시스템 디자인 스터디 4주차 후기

안녕하세요!K-DEVCON (이하 “데브콘”) 그로스 매니저 박종훈입니다.🙋🏻‍♂️ 이 글에서는 10/2 (목)에 진행된 스터디에서 나눈 이야기를 정리합니다. 이번 시간에는 “뉴스피드 설계” 이야기를 나눴습니다.뉴스피드 설계뉴스피드는 홈 페이지에 지속적으로 업데이트 되는 스토리들입니다. 사용자 정보 업데이트, 사진, 비디오, 링크, 앱 활동, 팔로우, 페이지, 좋아요 등 다양한 정보가 포함됩니다. 뉴스피드 시스템 설계는 유명한 면접 문제 중 하나입니다. 뉴스피드 시스템 설계에서는 빠른 응답을 위해 Cache를 적극적으로 사용하는 것이 특징입니다. 실제로 트위터의 경우 Redis를 적극적으로 사용한 것을 발표자료를 통해 엿볼 수 있습니다. (Timelines at Scale) 우리는 먼저 책에서 나오는..

[Review] 시스템 디자인 스터디 3주차 후기

안녕하세요!K-DEVCON (이하 “데브콘”) 그로스 매니저 박종훈입니다🙋🏻‍♂️ 이 글에서는 9/25 (목)에 진행된 스터디에서 나눈 이야기를 정리합니다.이번 시간에는 “웹 크롤러 설계” 과 “알림 시스템 설계” 이야기를 나눴습니다. — [1] 웹 크롤러크롤러 만들어본 경험 있는지, 현재 회사에서 관련되어 사용하는 부분이 있는지에 대해서 이야기를 나누며 시작 하였습니다. 커머스 도메인에 계신 한 분이 공유해주신 사례가 최저가 보상 서비스에 크롤링을 사용한다고 하셨습니다.최저가 보상이 단순 마케팅 용어인 줄 알았는데, 실제로 크롤링 기능으로 구현되는 사례라 흥미로웠습니다. 한 사이트만 크롤링하는 것은 비교적 간단합니다. 패턴을 잘 찾아서 크롤링을 하도록 하면 되는데요.반면에 정해지지 않은 사이트들..

[Review] 시스템 디자인 스터디 2주차 후기

안녕하세요!K-DEVCON (이하 “데브콘”) 그로스 매니저 박종훈입니다🙋🏻‍♂️ 이 글에서는 9월 18일(목)에 진행된 스터디에서 나눈 이야기를 정리합니다.이번 시간에는 “분산 시스템을 위한 유일 ID 생성기 설계” 과 “URL 단축기 설계” 이야기를 나눴습니다. [1] 유일 ID 생성기먼저는 각자 일반적으로 어떻게 ID를 생성하고 있는가에 대한 이야기를 나눴습니다.Auto Increment를 사용하고 있는 경우도 있었고, UUID를 사용하는 경우도 있었고, 업무적인 컬럼을 PK로 사용하는 경우도 있었습니다. 어떻게 ID를 생성하는 것이 좋을지는 상황에 따라서 달라집니다.일반적인 상황에서는 Auto Increment 가 대부분의 경우 가장 빠른 해결책이 될 수 있습니다.하지만 분산 환경일 경우에..