시스템 아키텍처 개요
전체 시스템 구성
Section titled “전체 시스템 구성”Glowb는 Spring Boot 백엔드와 FastAPI Python 서비스 두 개의 서버로 구성됩니다.
서버 간 통신 패턴
Section titled “서버 간 통신 패턴”Spring Boot와 FastAPI 간 통신은 두 가지 패턴을 사용합니다.
1. 동기 HTTP 요청
Section titled “1. 동기 HTTP 요청”Spring Boot에서 FastAPI로 직접 HTTP 호출 후 응답 대기.
- SNS 프로필 조회, AI 리포트 생성 등
2. 비동기 콜백 (Redis Queue)
Section titled “2. 비동기 콜백 (Redis Queue)”Spring Boot에서 FastAPI로 작업 요청 후, FastAPI가 Redis Queue에 작업 등록하고, 완료 시 콜백 웹훅으로 Spring Boot에 결과를 전달합니다.
- 양방향 크롤링, FTC 데이터 수집, AI 데이터 일괄 처리 등
공유 리소스
Section titled “공유 리소스”| 리소스 | Spring Boot | FastAPI | 비고 |
|---|---|---|---|
| MariaDB | 읽기/쓰기 (주 DB) | 읽기 전용 (캠페인 조회) | TB_COLLAB 등 |
| PostgreSQL | - | 읽기/쓰기 | pgvector 임베딩, 크롤링 데이터 |
| Redis | 캐시 | - | Spring 캐시용 |
| Redis Queue | - | 작업 큐 | RQ 백그라운드 작업 |
| AWS S3 | 업로드/다운로드 | 업로드/다운로드 | glowb-output 버킷 공유 |