
nginx 설정 없이 우아하게 서비스 점검하기 (下)
두줄요약
nginx 설정 없이 Redis 기반 AccessBlock으로 화면과 API 점검 차단을 구현했습니다. 메타데이터·실행데이터를 분리해 대상과 권한별 제어를 지원합니다.
문제 상황
- nginx·게이트웨이 없는 CORS 환경에서 비개발자도 설정 가능한 서비스 점검 접근 차단 요구
- 클러스터·warehouse·권한별 차단 및 업무용 RDBMS 비종속성 요구
구조와 흐름
- 구글 스프레드시트 메타데이터를 BigQuery와 3분 주기 배치로 Redis에 동기화
- 차단 대상 경로 메타데이터와 사용자 범위·제외 권한을 담은 실행데이터 분리
- VueRouter 화면 차단과 Spring AOP 기반 API 차단의 이중 적용
선택 이유
- 친숙한 스프레드시트 기반 메타데이터 관리와 BigQuery 연동
- 즉시 반영이 필요한 실행데이터의 Swagger·Postman API 입력 및 Redis 직접 관리
- path 정보와 차단 대상 조건의 관심사 분리
성능/운영 포인트
- BigQuery 직접 조회 대신 Redis 캐시 조회로 요청 지연 방지
- 호출 횟수 기반 동기화 대신 3분 주기 배치로 동기화 시점 예측 가능성 확보
- 메타데이터 List 저장, 빈번한 추가·삭제 대상 실행데이터 Hash 저장

