반응형
DB 설계 변경에 대한 정리 (현실 로직 우선)
초기 설계에서는 푸시 구독 정보를 사용자 테이블(A)와 연계하여 관리하는 구조를 고려했다.
다만 실제 구현 단계에서 아래와 같은 현실적인 제약 사항을 확인했다.
- 사용자 정보 연계를 위해서는 기존 통합로그인(SSO) 시스템 연동이 필요
- 해당 시스템 연동에는 별도의 라이선스 및 행정 절차가 요구됨
- 단순 푸시 알림 PoC 및 운영 검증 단계에서 즉시 적용하기에는 비용과 일정 측면에서 비효율적
이러한 이유로 지금 시점에서 현실적으로 구현 가능한 로직부터 우선 반영하는 방향으로 설계를 조정했다.
변경된 방향성
사용자 중심 → 구독(endpoint) 중심 설계
Web Push 특성상, 실제 푸시 발송의 최소 단위는 사용자 계정이 아닌 브라우저의 endpoint이다.
현재 단계에서는 로그인 사용자 기준 관리가 아닌 브라우저 / 디바이스 기준 구독 관리가 가장 합리적이라고 판단 했다.
B(웹 푸시 구독 정보) 테이블 역할 재정의
기존에는 B 테이블이 사용자 하위 개념처럼 설계되었으나 변경 이후에는 아래와 같이 역할을 갖는다.
- 푸시 구독 정보 저장소
- Web Push 발송에 필요한 최소 정보만 저장
- 로그인 여부와 무관하게 동작
향후 확장 계획
향후 서비스 고도화 단계에서 통합로그인(SSO) 시스템 연동이 가능해질 경우
- USER_NUMB 컬럼 추가
- 사용자 기준 조건별 푸시 발송
- 개인화 알림 및 수신 이력 관리
위와 같은 기능을 테이블 구조 변경 없이 점진적으로 확장할 수 있도록 설계했다.

반응형
'SideProject' 카테고리의 다른 글
| Docker 기반 웹 푸시 알림 시스템 - 4 (0) | 2026.02.02 |
|---|---|
| Docker 기반 웹 푸시 알림 시스템 - 3 (0) | 2026.01.27 |
| Docker 기반 웹 푸시 알림 시스템 - 2 (0) | 2026.01.19 |
| Docker 기반 웹 푸시 알림 시스템 - 1 (0) | 2026.01.14 |
| 단축URL 구현하기 (네이버 me2.do 서비스 종료) (2) | 2025.01.20 |