Skip to content

[5주차 질문 - 강민우] #8

@rkdalsdn94

Description

@rkdalsdn94

11장

추가) 면접에서 사용할 수 있는 유용한 규칙

📌 읽기가 많은 시스템의 경우- 캐시 사용을 고려
📌 쓰기가 많은 시스템의 경우 - 비동기 처리를 위해 Message Queue 사용
📌 낮은 지연시간을 요구하는 경우 - 캐시 및 CDN 사용을 고려
📌 ACID 원칙이 필요한 경우 - RDBMS/SQL DB로 이동
📌 비정형 데이터의 경우 - NoSQL DB로 이동
📌 복잡한 데이터(비디오, 이미지, 파일)의 경우 - Blob/Object 저장소로 이동
📌 복잡한 사전 계산이 필요한 경우 - Message Queue & 캐시를 이용
📌 대용량 데이터 검색 - 검색 인덱스, 트리 또는 검색 엔진을 고려
📌 SQL 데이터베이스 확장 - 데이터베이스 샤딩을 구현
📌 고가용성, 성능 및 처리량 - 로드 밸런서를 사용
📌 글로벌 데이터 전송 - CDN 사용을 고려
📌 그래프 데이터(노드, 엣지 및 관계가 있는 데이터) - 그래프 DB를 사용
📌 다양한 컴포넌트 확장 - 수평 확장을 구현
📌 고성능 데이터베이스 쿼리 - DB 인덱스 사용
📌 일괄 작업 처리 - 배치 및 Message Queue 사용
📌 서버 부하 관리 및 DOS 공격 방지 - Rate Limiter 사용
📌 마이크로서비스 아키텍처 - API Gateway 사용
📌 Single Point of Failure - 이중화 구현
📌 내결함성 및 내구성 - 데이터 복제 구현
📌 사용자 간의 빠른 통신 - Websocket 사용
📌 분산 시스템의 장애 감지 - Heartbeat 구현
📌 데이터 무결성 - Checksum Algorithm 사용
📌 효율적인 서버 확장 - Hashing 구현
📌 분산형 데이터 전송 - Gossip 프로토콜 고려
📌 위치 기반 기능 - Quadtree, Geohash 등을 사용
📌 특정 기술 이름 피하기 - 일반적인 용어 사용
📌 고가용성과 일관성 트레이드 오프 - 궁극적인 일관성
📌 IP 확인 및 도메인 이름 쿼리 - DNS 언급
📌 네트워크 요청에서 대용량 데이터 처리 - 페이지네이션 구현
📌 캐시 제거 정책 - LRU 캐시
📌 트래픽 급증 처리 - 오토스케일링 구현하여 리소스를 동적으로 관리
📌 분석이 필요할 때 - data lake 또는 전용 DB 사용 고려
📌 대규모 동시 연결 처리 - connection pooling을 사용하고 Protobuf를 사용하여 데이터 페이로드 최소화
출처 - https://ducktopia.tistory.com/112

12장

다른 부분에서도 웹소켓을 사용하는 것이 좋을까? (204p)

  • 서비스의 모든 부분에서 웹소켓을 사용하면 어떻게 될까?

Metadata

Metadata

Assignees

Labels

questionFurther information is requested

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions