한컴인스페이스

DFLOW MLOps 플랫폼 성능 개선 — 부하테스트 기반 병목 진단

2026.06
성능 개선
Djangok6LocustFlaskSQLite
  • [테스트 인프라] GPU 필요한 torch 의존성 때문에 반복 부하테스트가 어려움 → torch 없이 동작하는 Flask ML mock 서버 직접 구현, k6 인증 테스트용 유저·토큰 생성 스크립트 작성
  • [병목 진단] k6 4개 시나리오로 ML 백엔드 API 부하테스트 — 초기 실패율 23.8%를 API 스펙 오류로 특정해 0.5%까지 수정, 이후 SQLite 동시 쓰기 직렬화를 실제 병목으로 확정
  • [성능 개선] ML 백엔드 상태를 매번 DB에서 조회·저장하던 구조 → LocMemCache(TTL 30s)로 캐싱하고 값 불변 시 저장 생략, SQLite WAL 모드 적용 — api_load p95 4,239ms→2,106ms(-50%), VU당 DB 쓰기 5회→2회(-60%)