목표
- 자주 헷갈리는 백엔드 핵심 개념을 Q&A 형식으로 빠르게 복습
- 스프링, 데이터베이스, 운영/모니터링 등 영역별 질문을 한눈에 정리
- 실무 문제 대응을 위한 참고 답변을 축적
활용 방법
- 모르는 개념이 생길 때마다 Q&A를 추가하고,
module: "qna"만 붙이면 이 페이지에 자동 정리됩니다. - 필요하면 태그(Spring, Database, Kafka, DevOps 등)로 필터링하여 빠르게 찾아봅니다.
module: "qna"만 붙이면 이 페이지에 자동 정리됩니다.인덱스/격리/락, Redis 캐시/락, Kafka 파티션·정렬·리밸런스 등 30문항 Q&A
JVM/GC, 동시성, 스프링 빈/트랜잭션/보안 등 자주 묻는 50문항 Q&A
CI/CD, 모니터링/알람, 네트워크, CORS/CSRF/OWASP 등 운영/보안 관련 20문항 Q&A
Q1. Mono와 Flux의 차이는 무엇인가요? 답변 Mono: 0개 또는 1개의 데이터를 비동기로 처리하는 Publisher Flux: 0개 이상 N개의 데이터를 비동기로 처리하는 Publisher …
상태관리 비교 정리 Q1. Redux와 Context API의 차이는 무엇인가요? 답변 Redux와 Context API는 모두 전역 상태 관리를 위한 도구이지만, 철학과 복잡도가 다릅니다. Context API …
SQL 성능 튜닝 정리 Q1. Execution Plan (실행 계획)은 어떻게 읽나요? 답변 **Execution Plan (실행 계획)**은 DB 옵티마이저가 쿼리를 어떻게 실행할지 계획한 내용입니다. …
Spring Transaction 관리 정리 Q1. @Transactional은 어떻게 동작하나요? 답변 @Transactional은 Spring AOP를 이용한 선언적 트랜잭션 관리로, 프록시 패턴으로 구현됩니다. …
Q1. Spring Bean의 생명주기를 설명해주세요. 답변 Spring Bean은 컨테이너 시작 → 생성 → 의존성 주입 → 초기화 → 사용 → 소멸 단계를 거칩니다. 상세 생명주기: 1. 스프링 컨테이너 생성 ↓ …
Reactive Programming 개념 정리 Q1. Reactive Programming이란 무엇이고, 왜 필요한가요? 답변 Reactive Programming은 비동기 데이터 스트림을 선언적으로 처리하는 프로 …
React 성능 최적화 정리 Q1. Virtual DOM은 어떻게 동작하나요? 답변 Virtual DOM은 실제 DOM의 가벼운 복사본으로, React가 UI 업데이트를 효율적으로 처리하기 위한 메커니즘입니다. …
Q1. OAuth2 인증 흐름을 설명하고, 4가지 Grant Type의 차이점을 비교해주세요. 답변 OAuth2는 인증(Authentication)이 아닌 인가(Authorization) 프로토콜입니다. 사용자가 …
Kafka Partition 설계 정리 Q1. Kafka에서 메시지는 어떻게 Partition에 분배되나요? 답변 Partition 분배 방식은 메시지의 Key에 따라 결정됩니다. 3가지 분배 전략: 1. Key가 …
Kafka Consumer Group 정리 Q1. Kafka Consumer Group이란 무엇이고, 왜 필요한가요? 답변 Consumer Group은 여러 Consumer가 협력하여 Topic의 메시지를 분산 처리 …
Q1. JVM의 구조를 설명해주세요. 답변 JVM은 크게 Class Loader, Runtime Data Area, Execution Engine으로 구성됩니다. …
Q1. Java의 메모리 구조를 설명해주세요. Heap과 Stack의 차이는 무엇인가요? 답변 Java 메모리는 크게 Heap, Stack, Method Area, PC Register, Native Method …
Q1. @ControllerAdvice와 @ExceptionHandler를 사용한 글로벌 예외 처리를 설명해주세요. 답변 @ControllerAdvice는 Spring에서 모든 Controller에 대한 전역적인 예 …
Docker & Kubernetes 정리 Q1. Docker와 가상머신(VM)의 차이는 무엇인가요? 답변 **Docker (Container)**와 **VM (Virtual Machine)**은 모두 애플리케 …
Q1. DispatcherServlet의 동작 흐름을 설명해주세요. 답변 DispatcherServlet은 Spring MVC의 Front Controller로, 모든 HTTP 요청을 받아 적절한 컨트롤러로 라우팅합 …
DB 인덱스 최적화 정리 Q1. B-Tree 인덱스는 어떻게 동작하나요? 답변 **B-Tree (Balanced Tree)**는 대부분의 RDBMS에서 사용하는 균형 잡힌 트리 구조의 인덱스입니다. 구조적 특징: …
Q1. 낙관적 락(Optimistic Lock)과 비관적 락(Pessimistic Lock)의 차이점과 사용 사례를 설명해주세요. 답변 동시성 제어는 여러 트랜잭션이 동시에 같은 데이터에 접근할 때 데이터 일관성을 …
CI/CD 개념 정리 Q1. CI/CD란 무엇이고, 왜 필요한가요? 답변 CI/CD는 **지속적 통합(Continuous Integration)**과 **지속적 배포(Continuous …
Q1. 캐싱의 기본 개념과 Cache-Aside, Write-Through, Write-Behind 전략을 설명해주세요. 답변 **캐싱(Caching)**은 자주 사용되는 데이터를 빠른 저장소(메모리)에 임시 저장하 …
API 성능 문제 해결 정리 Q1. Thread Dump는 어떻게 분석하나요? 답변 Thread Dump는 특정 시점의 모든 스레드 상태 스냅샷으로, 성능 문제 진단에 핵심적입니다. Thread Dump …