← 포트폴리오 목록

광고주 캠페인 실시간 관제·정산 증빙 플랫폼

MVP 이후 고도화 방향으로, 실시간 집행 관제 상태바, 예산 소진 알림 규칙, 정부지원사업 증빙용 정산 패키지, 광고주 계정 권한과 감사 로그를 통합한 확장 프로젝트입니다.

프로젝트 납품 요약

아래 프로젝트 개요와 핵심 기능에서 구현 화면을 확인할 수 있습니다.

서비스 타입Web
업종모니터링
기술 스택
ReactNext.jsTypeScriptTailwind CSSNestJSMySQLMongoDBRedisExcelJS
주요 기능
  • 실시간 집행 관제
  • 예산 소진 알림
  • 정산 증빙 패키지
  • 권한 관리·감사 로그

프로젝트 개요

범위: 개발, 디자인, 기획

MVP 이후 고도화 방향으로, 실시간 집행 관제 상태바, 예산 소진 알림 규칙, 정부지원사업 증빙용 정산 패키지, 광고주 계정 권한과 감사 로그를 통합한 확장 프로젝트입니다. P1 스택 위에 Redis와 큐 기반 비동기 처리를 더해 설계합니다.

작업 범위

  • 실시간 집행 관제: 슬림 상태바와 타임라인으로 캠페인 집행 상황을 SSE로 받아 한눈에 관제합니다
  • 예산 소진 알림: 집행 속도로 예산 소진 시점을 추정하고 임계 조건을 광고주가 직접 설정합니다
  • 정산 증빙 패키지: 정산 기간별 증빙 묶음과 결과보고서를 엑셀·PDF로 내려받습니다
  • 권한 관리·감사 로그: 광고주 내부 담당자 역할을 나누고 조회·내보내기 행위를 감사 로그로 남깁니다

주요 업무

  • 실시간 집행 관제 화면: SSE 스트림 엔드포인트와 상태바·타임라인·우선 대응 큐 화면을 구현합니다
  • 예산 소진 알림 화면: 선형 추세 기반 소진 시점 계산과 규칙 편집 화면, 알림 발송 큐를 구현합니다
  • 정산 증빙 패키지 화면: 정산 건 증빙 목록, 보고서 템플릿 렌더링, 일괄 내보내기 큐를 구현합니다
  • 권한 관리·감사 로그 화면: 역할 기반 권한, 담당자 초대, 감사 로그 조회 화면을 구현합니다
광고주 캠페인 실시간 관제·정산 증빙 플랫폼
요구사항 정의

프로젝트 핵심 과제

프로젝트 진행 시 해결한 핵심 기술 과제입니다.

SSE 연결이 프록시나 ECS 로드밸런서 유휴 시간 제한에 끊길 수

주기적 하트비트와 재연결 보정 구조 설계가 필요합니다

소진 예측이 집행 초기 데이터 부족 구간에서 흔들릴 수

최소 표본 기준과 예측 보류 표시로 대응합니다

정부지원사업 증빙 형식이 사업마다 달라질 수

템플릿과 항목 정의를 분리하는 구조로 대응합니다

다중 인스턴스에서 Redis 이벤트 중계가 중복될 수

이벤트 ID 기반 중복 제거 방식을 설계합니다

구현 내용

핵심 기능 상세

핵심 기능 1

실시간 집행 관제

슬림 상태바와 타임라인으로 캠페인 집행 상황을 SSE로 받아 한눈에 관제합니다. SSE 스트림 엔드포인트와 상태바·타임라인·우선 대응 큐 화면을 구현합니다.

  • NestJS SSE 엔드포인트에서 Redis Pub/Sub 이벤트를 광고주별 채널로 중계
  • 연결 끊김 시 마지막 이벤트 ID 기반 재연결과 폴링 폴백 구성
  • 상태바 인라인 지표와 타임라인을 이벤트 단위로 부분 갱신

SSE 연결과 폴링 폴백을 하나의 클라이언트 훅으로 묶어 네트워크 상태가 흔들려도 화면이 끊기지 않는 구조를 설계합니다.

실시간 집행 관제
실시간 집행 관제 실제 화면
핵심 기능 2

예산 소진 알림

집행 속도로 예산 소진 시점을 추정하고 임계 조건을 광고주가 직접 설정합니다. 선형 추세 기반 소진 시점 계산과 규칙 편집 화면, 알림 발송 큐를 구현합니다.

  • 최근 집행 구간의 이동 평균으로 소진 예상 시점을 계산하는 서비스 구현
  • Bull Queue로 이메일·화면 알림을 비동기 발송하고 재시도 정책 적용
  • 규칙 편집 폼에 조건·임계값·수신 채널 유효성 검증 적용

규칙 평가와 발송을 분리한 큐 구조로 알림 로직을 확장하기 쉽게 설계합니다.

예산 소진 알림
예산 소진 알림 실제 화면
핵심 기능 3

정산 증빙 패키지

정산 기간별 증빙 묶음과 결과보고서를 엑셀·PDF로 내려받습니다. 정산 건 증빙 목록, 보고서 템플릿 렌더링, 일괄 내보내기 큐를 구현합니다.

  • ExcelJS 템플릿으로 정산 요약·상세 시트를 구성하고 기간 단위로 묶어 생성
  • 정부지원사업 사업비 집행 증빙에 필요한 항목 체크리스트 화면 구성
  • 내보내기 작업을 큐로 처리하고 완료 시 다운로드 링크를 알림

증빙 항목 정의를 설정 데이터로 분리해 보고서 형식 요구가 달라져도 템플릿만 교체하는 구조를 설계합니다.

정산 증빙 패키지
정산 증빙 패키지 실제 화면
핵심 기능 4

권한 관리·감사 로그

광고주 내부 담당자 역할을 나누고 조회·내보내기 행위를 감사 로그로 남깁니다. 역할 기반 권한, 담당자 초대, 감사 로그 조회 화면을 구현합니다.

  • 광고주 단위 하위 계정에 조회·내보내기·관리 역할을 분리하는 가드 설계
  • 내보내기와 로그인 이벤트를 MongoDB 감사 컬렉션에 적재
  • 감사 로그 화면에 기간·행위·담당자 필터 적용

격리 단위를 광고주에서 담당자로 한 단계 세분화해도 기존 공통 인터셉터를 재사용하는 구조를 설계합니다.

권한 관리·감사 로그
권한 관리·감사 로그 실제 화면
구현 과정

프로젝트 진행 단계

STEP 1

이벤트 스트림과 Redis 중계 구조 설계 · 2026.10

집행 이벤트 스키마, Redis Pub/Sub 채널, SSE 재연결 규칙 정의

STEP 2

관제 화면과 우선 대응 큐 개발 · 2026.10

상태바, 타임라인, 소진율 정렬 큐와 폴링 폴백 훅 구현

STEP 3

소진 예측 서비스와 알림 큐 구현 · 2026.10

이동 평균 기반 예측, 규칙 편집 폼, Bull Queue 발송과 재시도 구현

STEP 4

증빙 패키지 생성과 권한·감사 로그 적재 · 2026.10

ExcelJS 템플릿, 증빙 체크리스트, 역할 가드와 MongoDB 감사 컬렉션 구현

개발 결과

SSE 연결과 폴링 폴백 통합 훅 구현마지막 이벤트 ID 기반 재연결과 폴링 폴백을 하나의 훅으로 묶어 연결이 흔들려도 누락 이벤트를 보정하는 구조 설계
예산 소진 예측 및 알림 평가 큐 구축이동 평균으로 소진 시점을 계산하고 규칙 평가와 발송을 Bull Queue로 분리해 재시도 정책을 적용
설정형 정산 증빙 템플릿 체계 설계증빙 항목 정의를 설정 데이터로 분리하고 ExcelJS 템플릿만 교체해 보고서 형식 변경에 대응하는 구조 구현
담당자 단위 권한과 감사 로그 설계조회·내보내기·관리 3개 역할 가드와 MongoDB 감사 컬렉션으로 행위 이력을 기록하는 구조 구축

기술적 주안점

  • SSE 연결과 폴링 폴백을 하나의 클라이언트 훅으로 묶어 네트워크 상태가 흔들려도 화면이 끊기지 않는 구조를 설계합니다
  • 규칙 평가와 발송을 분리한 큐 구조로 알림 로직을 확장하기 쉽게 설계합니다
  • 증빙 항목 정의를 설정 데이터로 분리해 보고서 형식 요구가 달라져도 템플릿만 교체하는 구조를 설계합니다

유사한 프로젝트를 기획하고 계신가요?

필요한 기능과 일정을 알려주시면 개발 범위를 함께 정리하겠습니다.

프로젝트 문의