-
Notifications
You must be signed in to change notification settings - Fork 0
주제 선정 참고자료
HYUNJIN CHO edited this page Jul 5, 2024
·
9 revisions
MSA 스터디에서 발표 주제를 어떤 것을 하면 좋을지에 대해서 정리해둔 문서입니다.
발표 형식은 우아한형제들의 테코톡 같은 방식을 지향합니다!
아래와 같은 내용을 다루면 좋지 않을까 추천을 해봅니다.
- 실제 기업에서 쓰는 기술이나 이키텍처에 대한 소개 (ex : 여기어때의 선착순 쿠폰 아키텍처, 당근마켓의 채팅 아키텍처 등)
- 백엔드와 관련된 최신 IT 소식 및 기술
- 대규모 시스템 구축에 관련된 이론 (ex : SAGA 패턴, 이기종 DB Transaction, CAP 정리 등)
- 기술 스택에 대한 소개 (ex : Istio, Harbor, Helm, Jaeger 등)
- 시스템 구현 방법에 대한 소개 (ex : 당근마켓의 주변 지역 탐색 기술, AWS Lambda를 이용한 이미지 Resizing, 실시간 인기 급상승 검색어 구현 등)
- 자신이 백엔드 개발하면서 겪었던 고충에 대한 소개 (ex : Redis API Rate Limiter 구현시 겪었던 고충, Jenkins 적용 과정 중 겪었던 고충 등)
되도록이면 정통 CS (자료구조, 알고리즘, 운영체제 등)은 피하는 방향으로 갑시다!
해당 내용은 갈피를 잡기 위해 도와주려고 제가 생각한 몇가지 예시들을 적어둔 내용입니다. 참고용으로만 봐주시고, 이중에서 고르셔서 해도 무방합니다!!
실제 기업에서 쓰는 아키텍처 소개
- 당근마켓 채팅 아키텍처
- 여기어때의 선착순 쿠폰 이벤트 개발
- 배달의 민족의 Kafka를 활용한 이벤트 기반 아키텍처
- 당근마켓이 GRPC를 활용하는 방법
- 오늘의 집의 MSA 백엔드 분리작업
- 당근마켓 검색엔진 쿠베네티스 클러스터로 운영하는 방식
- 토스가 API Gateway를 쓰는 방식
- Netflix가 MSA 환경에서 인증/인가 처리하는 방식
백엔드에 관련된 내용 소개
- 인덱스를 타지 않는 쿼리들
- ThreadLocal과 ConnectionPool의 관계
- 협업에서 Swagger를 더 잘 사용하는 방안
- 유용한 Intellij 기능
- FixtureMonkey를 활용한 자동 테스트 케이스 생성
- Hacker News Algorithm과 같은 랭킹 알고리즘
- Tomcat vs Netty
- Kotlin과 Java의 컴파일 차이
- PostgreSQL에서 Pivot Table 활용하기
- Redis의 데이터 타입 및 명령어
대규모 시스템 구축 이론
- 이기종 DB Transaction
- Transaction Outbox Pattern
- 분산 트랜젝션 (SAGA Pattern, 2PC 등)
- Chained Transaction
- 안정 해시 설계
- DB Sharding과 그에 따라 발생하는 문
- GRPC을 이용한 서비스간 통신
- 무중단 배포
- 캐싱 전략
- CAP 정리
- 서킷브레이커
- 계략적인 서비스 규모 측정
- 처리율 제한 장치
- 로드밸런싱
- 동시성 예방
- 고가용성 아키텍처 설계
- 쿼리 개선
기술 스택에 대한 소개
- ArgoCD, Github Actions, Jenkins
- Kubernetus, EKS
- Docker
- Jaeger, Zepkin
- EKS
- Kafka, RabbitMQ, Redis Stream
- Istio
- Spring Cloud
- Prometheus + Grafana, Datadog
- ELK Stack
- Nginx
- Terraform
- Hadoop, Spark
- Valut
- Apache Jmeter, Locust, Ngrinder
- Redis, Memcached
시스템 구현 방법에 대한 소개
- 실시간 급상승 검색어 구현 방법
- 당근마켓의 H3을 이용한 지역 개념 적용을 통한 주변 동네 찾기
- AWS Lambda를 이용한 이미지 Resizing
- 채팅 시스템 구축 방법
- 웹 크롤러 구축
- 알림 시스템 설계
- 뉴스 피드 시스템 설계
- 검색어 자동완성 시스템
- 증권 거래 시스템
- 결제 시스템
- 호텔 예약 시스템
- 광고 클릭 이벤트 집계 시스템
- 내 위치에서 가장 가까운 장소 추천 시스템
- Hierachical CLustering을 활용한 TSP 해결 (사용자에게 최적 경로 추천 구현)
개발자 배씨 블로그 유알 블로그 주형씨 블로그 가상면접 사례로 배우는 대규모 시스템 설계 요약본 규연의 개발일지