2017-03-16 3 views
0

내가 MultipartConfig에 대한 공식 및 비공식 문서를 읽고 있어요 매개 변수,하지만 난 매개 변수, 특별히 이러한 것들의 사용을 이해하지 않습니다서블릿 MultipartConfig가

MAXFILESIZE : 업로드 된 파일에 허용되는 최대 크기, 바이트 단위. 업로드 된 파일의 크기가이 크기보다 큰 경우 웹 컨테이너가 예외를 throw합니다 (IllegalStateException). 기본값 인 은 무제한입니다.

fileSizeThreshold : 파일을 디스크에 임시 저장하기 전의 파일 크기 (바이트). 기본 크기는 0 바이트입니다.

maxRequestSize : 멀티 파트/양식 데이터 요청에 허용되는 최대 크기 (바이트). 업로드 된 모든 파일의 전체 크기가이 임계 값을 초과하면 웹 컨테이너에서 예외가 발생합니다. 기본값 인 은 무제한입니다.

MaxFileSize가 최대 파일 크기의 값이라고 생각하십니까? 하지만 ... 다른 두 매개 변수는 어떨까요? 누구든지 다른 말로 설명 할 수 있습니까?

감사합니다.

답변

1

fileSizeThreshold : 파일을 디스크에 임시 저장하는 데 소요되는 파일 크기 (바이트). 기본 크기는 0 바이트입니다.

업로드 된 파일은 일부 임시 위치에서 서버의 메모리에 상주하거나 디스크에 저장 될 수 있습니다.이 설정은 두 상태 사이의 임계 값입니다.

maxRequestSize : multipart/form-data 요청에 허용되는 최대 크기 (바이트). 업로드 된 모든 파일의 전체 크기가이 임계 값을 초과하면 웹 컨테이너에서 예외가 발생합니다. 기본 크기는 무제한입니다.

하나의 멀티 파트 요청에는 여러 개의 작은 파일이 포함될 수 있습니다. 즉, 전체 한도는 모든 업로드 된 파일 크기의 합계입니다.

+0

"maxRequestSize"를 이해했습니다. fileSizeThreshold 매개 변수에 1MB를 사용하면 파일을 저장하기 위해 1MB의 예약 된 RAM 메모리가 사용되며 파일이 1MB를 초과하면 하드 디스크에 저장됩니다. 디스크? 그것이 내가 당신의 말로 이해 한 것입니다. – Ommadawn

+0

예약 된 메모리가 없으며, 1MB를 초과하는 파일이 디스크에 저장되며, 서버의 메모리가 부족하여 파일이 다운 될 경우 아래의 파일이 RAM에 저장됩니다. 그러나 버그가 있거나 문서를 존중하지 않기 때문에 각각의 특정 애플리케이션 서버에 대한 소스 코드를 확인할 필요가 있습니다. – borowis

+0

최대 파일 크기를 300kB로 제한하려면 filesizethreshold를 사용해야합니까? – Ommadawn