[SPRING] 스프링 부트와 임베디드 Tomcat으로이 속성을 어떻게 구성합니까?
SPRING스프링 부트와 임베디드 Tomcat으로이 속성을 어떻게 구성합니까?
application.properties 파일에서 connectionTimeout과 같은 속성을 구성합니까, 아니면 다른 곳에서 할 수 있습니까? 나는 Google에서 이것을 이해할 수 없다.
Tomcat 등록 정보 목록
이 Spring-Boot 예제를 찾았지만 connectionTimeout 속성은 포함되어 있지 않습니다. application.properties 파일에서 server.tomcat.connectionTimeout = 60000을 설정하면 오류가 발생합니다.
해결법
-
==============================
1.Spring Boot 1.4부터 server.connection-timeout 속성을 사용할 수 있습니다. 스프링 부트의 일반적인 애플리케이션 특성을 보라.
Spring Boot 1.4부터 server.connection-timeout 속성을 사용할 수 있습니다. 스프링 부트의 일반적인 애플리케이션 특성을 보라.
사용자 정의 된 EmbeddedServletContainerFactory 빈을 제공하십시오.
@Bean public EmbeddedServletContainerFactory servletContainerFactory() { TomcatEmbeddedServletContainerFactory factory = new TomcatEmbeddedServletContainerFactory(); factory.addConnectorCustomizers(connector -> ((AbstractProtocol) connector.getProtocolHandler()).setConnectionTimeout(10000)); // configure some more properties return factory; }
Java 8을 사용하지 않거나 Lambda Expressions를 사용하지 않으려면 다음과 같이 TomcatConnectorCustomizer를 추가하십시오.
factory.addConnectorCustomizers(new TomcatConnectorCustomizer() { @Override public void customize(Connector connector) { ((AbstractProtocol) connector.getProtocolHandler()).setConnectionTimeout(10000); } });
setConnectionTimeout () 메소드는 제한 시간 (밀리 초)을 요구합니다 (Apache Tomcat 8 Configuration Reference의 connectionTimeout 참조).
-
==============================
2.서버를 시작하기 전에 시스템 속성 집합을 선호합니다.
서버를 시작하기 전에 시스템 속성 집합을 선호합니다.
/** * Start SpringBoot server */ @SpringBootApplication(scanBasePackages= {"com.your.conf.package"}) //@ComponentScan(basePackages = "com.your.conf.package") public class Application { public static void main(String[] args) throws Exception { System.setProperty("server.port","8132")); System.setProperty("server.tomcat.max-threads","200"); System.setProperty("server.connection-timeout","60000"); ApplicationContext ctx = SpringApplication.run(Application.class, args); } }
-
==============================
3.실제로는 application.properties에서 server.connection-timeout이되어야합니다. 참조, 당신이 그것을 북마크하는 것이 좋습니다.
실제로는 application.properties에서 server.connection-timeout이되어야합니다. 참조, 당신이 그것을 북마크하는 것이 좋습니다.
from https://stackoverflow.com/questions/31461444/how-do-i-configure-this-property-with-spring-boot-and-an-embedded-tomcat by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 스프링 한계 최대 세션; 최대 사용자 수 제한 (0) | 2019.02.09 |
---|---|
[SPRING] 액추에이터 / 새로 고침이 스프링 부트 2.0.1에서 제공되지 않음 (0) | 2019.02.09 |
[SPRING] 리소스 파일을 찾을 수없는 봄 (CSS, JSP 등 ...) (0) | 2019.02.09 |
[SPRING] 스프링 배치에서 x 번 반복 (0) | 2019.02.09 |
[SPRING] Spring-WS의 응답 페이로드에 첨부 파일을 추가하려면 어떻게해야합니까? (0) | 2019.02.09 |