[커널아카데미] 백엔드 12기 26주차 회고(파이널 프로젝트 5주차)

david1-p·2025년 9월 21일

회고

목록 보기
26/27
  1. 시스템 아키텍처 분석 및 설계
  • JOBER_AI 템플릿 생성 시스템의 전체 구조 파악
  • Frontend ↔ Backend (Spring Boot) ↔ AI part (FastAPI) 3계층 아키텍처 분석
  • 실시간 채팅 기능을 위한 WebSocket 통신 설계
  1. AI 파트 실시간 채팅 기능 구현
  • FastAPI WebSocket 지원 추가
    • ConnectionManager 클래스로 세션 관리
    • Thread-safe 동시 연결 처리
    • 실시간 메시지 송수신 기능
  • 백엔드 연동 API 개발
    • /ai/sessions/start 엔드포인트 구현
    • /ai/chat/{session_id} WebSocket 엔드포인트
    • 백엔드 호환 모델 (BackendAiTemplateRequest/Response) 추가
  1. API 문서화 및 체계화
  • Swagger UI 기능별 분류
    • Template Generation, Real-time Chat, Session Management
    • Backend Integration, System, Debug 태그로 구분
    • 개발자 친화적 API 문서 완성
  • 엔드포인트 정리
    • 기존 14개 + 신규 WebSocket 기능 통합
    • 각 API별 요청/응답 형식 상세 문서화
  1. 템플릿 생성 로직 심화 분석
  • 3단계 템플릿 선택 시스템 분석
    • BasicTemplateMatcher (기존 템플릿)
    • PublicTemplateManager (공용 템플릿 105개)
    • Agent2 (새 템플릿 생성)
  • 핵심 컴포넌트 상세 분석
    • Agent1: 6W 변수 추출 + 의도 분석
    • VariableMapper: LLM 기반 의미적 변수 매핑
    • TemplateValidator: 품질 검증 시스템
  1. 백엔드 요구사항 문서화
  • Spring Boot WebSocket 구현 가이드

    • pom.xml 의존성 정의
    • WebSocketConfig, TemplateWebSocketHandler 구현 명세
    • AiServiceClient WebClient 연동 방안
  • 완전한 동작 플로우 설계

    • 세션 시작 → WebSocket 연결 → 실시간 통신 전체 과정
    • 에러 처리 및 연결 해제 로직 포함

    기술적 도전과 해결

    문제점

  • 기존 단방향 API 방식에서 실시간 양방향 통신으로 전환 필요

  • 3개 분리된 시스템(Frontend/Backend/AI) 간 연동 복잡성

  • 기존 코드 호환성 유지하면서 새 기능 추가

    해결 방안

  • WebSocket 기반 실시간 통신 아키텍처 설계

  • 기존 API 유지하면서 새 엔드포인트 병행 운영

  • 세션 관리 시스템으로 상태 일관성 보장

profile
DONE IS BETTER THAN PERFECT.

0개의 댓글