안녕하세요, 업로드를 위한 로컬 저장소 기능이 Rails 서버의 동일한 스레드에서 구현되어 있는 것을 확인했습니다. 동시에 업로드가 너무 많을 경우 Rails 서버가 차단(block)되는 문제가 생길 수 있을까요? 그래서 로컬 저장소 디스크 I/O 기능을 새로운 스레드에서 구현하는 것이 더 나은지, 아니면 현재 구현 방식이 괜찮은지 궁금합니다.
업로드는 여러 방식으로 구현되어 있습니다.
S3 업로드는 S3로 직접 전송됩니다.
NGINX 프론트엔드를 사용하는 업로드는 SENDFILE을 사용하므로, Rails가 전체 파일을 처리할 수 있습니다.
또한 필요에 따라 hijack과 defer를 사용하여 작업을 백그라운드 스레드로 이동시킵니다.
특정 문제를 겪고 계신 경우, PR을 시도해 보시기를 환영합니다. 우리는 항상 개선에 열려 있습니다.