Ada*_*dam 2 java tomcat spring-boot
我想尝试在 Spring Boot 2 中设置 Tomcat connectionUploadTimeout属性。我java.net.SocketTimeoutException: null在服务器日志中收到一些随机的不可重现的信息。
它来自请求输入流,因此如果我可以将此属性设置为非常短的持续时间,那么我应该能够在本地复制它。
我试过了
server.disableUploadTimeout=false
server.connectionUploadTimeout=5000
Run Code Online (Sandbox Code Playgroud)
和
server.tomcat.disableUploadTimeout=false
server.tomcat.connectionUploadTimeout=5000
Run Code Online (Sandbox Code Playgroud)
和
server.tomcat.disable-upload-timeout=false
server.tomcat.connection-upload-timeout=5000
Run Code Online (Sandbox Code Playgroud)
但我的 15 秒请求仍然在本地完成,没有任何超时。
Spring 文档在这里不是很有帮助。
无需猜测支持哪些属性,因为它们都列在参考文档的附录中。正如您希望看到的,没有用于配置连接上传超时或在Connector. 这意味着必须以编程方式配置这些属性。
Connector您可以使用 Tomcat 特定的以编程方式配置WebServerFactoryCustomizer:
@Bean
public WebServerFactoryCustomizer<TomcatServletWebServerFactory> tomcatCustomizer() {
return (tomcat) -> tomcat.addConnectorCustomizers((connector) -> {
if (connector.getProtocolHandler() instanceof AbstractHttp11Protocol) {
AbstractHttp11Protocol<?> protocolHandler = (AbstractHttp11Protocol<?>) connector
.getProtocolHandler();
protocolHandler.setDisableUploadTimeout(false);
protocolHandler.setConnectionUploadTimeout(5000);
}
});
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4364 次 |
| 最近记录: |