콘텐츠로 이동

Spring Boot

Spring Boot 관련 학습 내용을 정리합니다.

목차

학습 예정 (To-Be Added)

1. Spring Data JPA (데이터 접근 계층)

  • JPA Persistence Context (영속성 컨텍스트): 1차 캐시, 더티 체킹의 원리.
  • N+1 문제와 Fetch Join: 실무 성능 최적화의 핵심.
  • QueryDSL: 복잡한 동적 쿼리 처리 방법.
  • @Transactional: 트랜잭션 전파 레벨(Propagation)과 격리 수준(Isolation) 설정.

2. Spring Security (보안)

  • Spring Security Architecture: FilterChainProxy와 인증/인가 프로세스.
  • JWT 구현: Spring Security Filter를 커스텀하여 JWT 인증 구현하기.
  • OAuth2 Client: 구글, 카카오 로그인 연동.

3. Testing (테스트)

  • Unit Test vs Integration Test: @SpringBootTest@WebMvcTest, @DataJpaTest의 차이와 용도.
  • RestDocs: 테스트 코드를 기반으로 API 문서 자동화.

4. Integration (인프라 연동)

  • Spring Boot + Redis: 캐싱 전략 (@Cacheable) 및 Session Clustering.
  • Spring Boot + Message Broker: RabbitMQ/Kafka 연동 및 이벤트 기반 아키텍처 구현.
  • Scheduling & Batch: 주기적인 작업(@Scheduled)과 대용량 배치 처리(Spring Batch).

5. Observability (운영 및 모니터링)

  • Actuator: 애플리케이션 상태 모니터링 및 메트릭 수집.
  • Prometheus & Grafana 연동: Actuator 데이터를 시각화.