#queue
노트 5개
Backend › Architecture
대기열 시스템(가상 대기실) 설계순간적으로 몰리는 트래픽을 서버 증설 대신 줄 세우기로 흡수하는 가상 대기실의 구조를 정리했다. Redis Sorted Set에 도착 시각을 점수로 넣어 순번을 매기고, 주기 작업이 정해진 유입량만큼 대기→입장→종료 상태로 옮기는 방식이 핵심이다.
Backend › Architecture
메시지 큐와 Kafka메시지 큐를 고르는 기준과 IBM MQ → RabbitMQ → Kafka → Pulsar로 이어진 구조 변화, Kafka의 토픽·파티션·컨슈머 그룹 구조와 빠른 이유(순차 I/O, 제로 카피), 전달 보장 수준(at-most/at-least/exactly once)과 메시지가 유실되는 지점별 대책, Kafka와 RabbitMQ의 차이, 처리 실패와 DLQ, Kafka Connect·Streams·스키마 레지스트리 생태계를 정리했다.
Backend › Architecture
Kafka 운영: 복제, 컨슈머 그룹, 튜닝, 모니터링Kafka 클러스터를 운영할 때 알아야 할 내부 동작을 정리했다. 복제와 ISR·하이 워터마크, acks와 min.insync.replicas의 조합, KRaft 컨트롤러와 장애 조치, 프로듀서 배치·압축·전송 방식, 컨슈머 그룹 리밸런스와 오프셋 커밋, 컨슈머 랙, 보존과 로그 컴팩션, 보안(TLS·SASL·ACL), 브로커 증설·롤링 재시작, 모니터링 지표와 병목 진단을 다룬다.
Algorithm › Data Structure
큐와 덱먼저 넣은 것을 먼저 꺼내는 큐(FIFO)와 양쪽 끝에서 넣고 뺄 수 있는 덱, 스택 두 개로 큐·큐로 스택 만들기, 구현에 따라 달라지는 덱의 임의 접근 비용.
Algorithm › Search
너비 우선 탐색 (BFS)시작점에서 가까운 노드부터 큐를 이용해 차례로 방문하는 그래프 탐색으로, 가중치 없는 그래프의 최단 거리를 구한다.