我在Spring应用程序中拥有这个属性:
server:
connection-timeout: 12000我收到警告:
Deprecated Each server behaves differently. Use server specific properties instead.
Gradle: org.springframework.boot:spring-boot-autoconfigure:2.6.8 (spring-boot-autoconfigure-2.6.8.jar)是否有更好的配置属性可以使用?
发布于 2022-06-21 11:32:20
我甚至不知道你为什么会收到反对的警告。
根据SpringBoot2.3及以后的文档,该属性将被删除,不再推荐使用。
当您可以阅读这里时,您还可以使用其他一些属性,这取决于运行spring引导应用程序的服务器。
如果您将tomcat作为运行服务器,则应该使用server.tomcat.connection-timeout。
如果使用netty,则应使用server.netty.connection-timeout。
如果使用jetty,则应使用server.jetty.connection-idle-timeout。
基本上,每个服务器都有自己的实现,因此您必须阅读服务器的文档来查看它允许的内容以及它的行为方式。与一台服务器的行为方式、它如何解释连接超时以及另一台服务器的行为和解释类似的配置可能有细微的不同。
这就是Spring决定在属性connection-timeout上选择服务器特定配置的原因,而不是一般属性,也是--一个非常重要的原因是,一些服务器甚至可能没有这种配置--。因此,在spring引导应用程序中配置了一个通用属性,运行应用程序的服务器甚至不尊重这个属性。
因此,您现在有了特定服务器的特定属性,现在您可以预先确定此配置是否在您的服务器中可用,并且您还可以阅读服务器文档以确切地了解该行为将是什么。
发布于 2022-06-25 15:26:30
虽然不推荐此设置,但我们仍然可以使用超时功能。
根据正式文件,我们可以在控制器中使用@Transactional(timeout = 1)进行跟踪。
https://stackoverflow.com/questions/72698754
复制相似问题