콘텐츠

Show GN: JPyRust – Java에서 Python AI 모델을 subprocess 대신 공유메모리…

스토리 · GeekNews · 2026.08.13

Java 백엔드 환경에서 Python으로 구현된 AI 모델을 호출할 때 발생하는 성능 문제를 해결하기 위해 'JPyRust'를 개발한 사례를 소개합니다. 기존의 subprocess 방식은 매 요청마다 새로운 프로세스를 실행하고 모델을 다시 로딩해야 하므로 상당한 지연 시간이 발생했습니다. 이를 해결하기 위해 Rust의 JNI와 공유 메모리(SHMEM)를 활용하여, Python 워커가 대기 상태에서 데이터를 즉시 처리할 수 있도록 구현했습니다. 테스트 결과, YOLOv8n 모델 기준으로 응답 속도가 약 390배(2,330ms에서 6ms로) 향상되는 놀라운 성능 개선을 달성했습니다. 시스템 프로그래밍과 AI 모델 연동 최적화에 관심 있는 개발자분들에게 매우 유용한 사례입니다.