최종 프로젝트 기술 키워드 정리

dev_joo·2026년 5월 21일

Pagely 최종 프로젝트 — 기술 키워드 정리

인증 / 인가

  • JWT + Opaque RT: 매 요청 검증의 stateless / 14일 무효화의 stateful 의 용도 분리
  • RT 화이트리스트: AT stateless 유지 + RT 즉시 무효화의 균형 (Hybrid 패턴)
  • 양방향 인덱스: AT 만료 시점에도 RT 만으로 O(1) 주인 식별
  • SHA-256 해시: Redis 노출 시 원본 RT 보호
  • Fail-Close 정책: Redis 다운 시 안전 거부 (Fail-Open 의 인증 우회 회피)
  • 자체 UserContext: MSA 의 Gateway 중앙 검증 + ThreadLocal 단순성 우선

아키텍처

  • MSA + Eureka + Spring Cloud Gateway: 도메인 별 책임 분리 + 중앙 인증
  • Strangler Fig 패턴: User → Auth 서비스의 점진 분리
  • Port & Adapter: 도메인의 외부 의존 분리

분산 / 메시징

  • Kafka + Outbox 패턴: At-least-once 발행 보장
  • @TransactionalEventListener : 트랜잭션 기반 이벤트 발행
  • Redis (Lettuce): TTL 자동 만료 활용

통신

  • OpenFeign + Eureka: 선언적 인터페이스 + 동적 endpoint
  • 2단계 Decoder: 에러 / 정상 응답 분리, 통일된 BusinessException

모니터링

  • Prometheus + Grafana + Zipkin: 메트릭 / 시각화 / 분산 추적의 표준 조합
  • k6 부하 테스트: 회원가입 P95 10.36s, CPU bound 병목 발견
  • 비즈니스 메트릭: 로그인 성공률 / latency 등 운영 시그널

데이터

  • PostgreSQL 17 + Flyway: 도메인 별 DB 분리 + 스키마 버전 관리
  • JPA + QueryDSL: 단순 CRUD + 복잡 type-safe 조회

공통 모듈

  • Common (ApiResponse / BusinessException / UserContext): 서비스 간 형식 일관성
  • GlobalExceptionHandler: ErrorCode 기반 표준 응답
  • @CurrentUserId / @AuthRequired: 인증/권한 검증

점진적 결정 / 회고

  • MVP → RT화이트리스트 → RT 회전, 권한 변경 감지 : 점진적 보안 강화
  • 회고: 한 번에 청사진 구현 → 통합 디버깅 부담 → 다음부터는 = 동작을 단순하게 분리해서 구현하기
profile
풀스택 연습생. 끈기있는 삽질로 무대에서 화려하게 데뷔할 예정 ❤️🔥

0개의 댓글