我有一个用于Spring Boot应用程序(Java 11(的Undertow容器,该应用程序是使用https启动的。该应用程序正在与IOS(Swift(和Android手机进行通信。我注意到有一段时间不用手机后(1分钟(,第一个请求需要更多的时间,因为执行SSL握手。
我想知道是否有一个选项可以缓存/使https会话无效,这样在较长时间后的第一个请求就不会再次进行hanshake。
根据Robert的评论,我将详细阐述一个答案。
我使用
-Djavax.net.debug=ssl:handshake:verbose
以帮助我跟踪ssl握手。然后,在控制台中查看日志后,我找到了负责TLS实现的类。使用debug,我找到了underflow的这个属性。我认为Tomcat的情况应该类似。
我在应用程序.properties中将server.undertow.no-request-timeout
设置为-1
客户端(手机:IOS和Android(无需更改。