안녕하세요, Spring Boot의 기본 웹서버인 Embeded Tomcat의 Config에 대해서 정리를 해보려합니다.
지난번에 Access 로그 설정 관련해서는 글을 작성을 하였기때문에, 로그를 제외한 나머지 설정에대해 정리를 해보도록 하겠습니다. (https://kim-oriental.tistory.com/43)
Embeded Tomcat 설정 항목
- server.tomcat.accept-count : 모든 쓰레드가 사용 중 일 때 들어온 요청이 대기하는 최대 큐의 길이, 일반적인 상황에서는 이미 모든 쓰레드가 Full이 찼으면 장애일 가능성이 높아 큐의 길이가 너무 길다면 응답시간만 늦어지고 장애상황 인지가 늦어질 수 있음 (Default: 100)
- server.tomcat.connection-timeout : 최초 연결이 허용되고, 요청 URI를 제출할 때까지 커넥터가 기다리는 시간
- server.tomcat.keep-alive-timeout : 세션 연결 비용 (3-Way HandSharke)을 줄이기 위해, 연결이 닫지 않고 다른 HTTP 요청을 기다리는 시간 (미설정 시 Connection Timeout이 세팅 됨, -1은 사용하지 않음)
- server.tomcat.max-keep-alive-requests : Keep Alive 유지할 수 있는 최대 HTTP 요청 수, 0이나 1은 Keep Alive를 비활성화이고 -1은 요청 수가 무제한 (Default : 100)
- server.tomcat.max-connections : 서버가 유지할 수 있는 최대 Connection의 수 (Default : 8192)
- server.tomcat.threads.max : 최대 실행 가능 Thread 수 (Default : 200)
- server.tomcat.threads.min-spare : 항상 대기 중인 최소 Thread 수 (Default : 10)
- server.tomcat.use-relative-redirects : sendRedirect 메서드의 상대 혹은 절대 리다이렉트 사용 여부 (Default: True)
- server.tomcat.max-http-form-post-size : HTTP Post 요청의 최대 form 컨텐츠 용량 (Default : 2MB)
- server.tomcat.max-swallow-size : 최대 request body 용량 (Default : 2MB)
- server.tomcat.processor-cache : 캐시로 재사용 될 최대 유휴 프로세서 수, -1은 무제한으로 최대 연결 수와 동일 (Default : 200)
- server.tomcat.reject-illegal-header : 잘못된 헤더명 또는 값이 포함된 요청의 경우 400응답으로 거부할지 혹은 무시하고 요청을 허용할지 설정 (Default : true (요청 거부))
- server.tomcat.relaxed-path-chars : URI path에서 허용되어야 하는 문자 (쉼표로 구분하여 작성), "< > [ \ ] ^ ` { | }"만 허용
- server.tomcat.relaxed-query-chars : URI query string에서 허용되어야 하는 문자 (쉼표로 구분하여 작성), "< > [ \ ] ^ ` { | }"만 허용
- server.tomcat.uri-encoding : URI 디코딩에 사용 할 문자 인코딩 설정 (Default : UTF-8)
- server.tomcat.additional-tld-skip-patterns : TLD (JSP 커스텀태그나 JSTL 태그 설정파일) 스캐닝을 위한 Jar파일 스캔을 스킵할 jar파일 패턴 정의 (예: additional-tld-skip-patterns: "*.jar" (모든 파일 스킵))
- server.tomcat.resource.allow-caching : static resource에 대한 캐싱을 허용할지 여부 (Default : True)
- server.tomcat.resource.cache-ttl : static resource 캐싱 유지 시간 (Time-To-Live)
반응형
'[IT] Spring Boot (JAVA)' 카테고리의 다른 글
Spring Boot Access Log 요청 호출 수, 응답시간 또는 사이즈 순으로 통계 (Linux Shell Script 활용) (0) | 2022.12.05 |
---|---|
[JAVA Spring Boot] spring.config.import 사용하여 외부 프로퍼티 컨피그 파일 적용 (0) | 2022.09.28 |
[Spring Boot] Tomcat Access Log 설정 (0) | 2022.06.28 |
[Spring] 스프링 의존성 주입 (Dependency Injection) 개념 및 종류 (0) | 2022.04.22 |
댓글