Spring Boot 应用程序在本地运行,但在部署到 Heroku 时不起作用

我遇到了一个问题,该应用在过去 7 个月内一直运行良好。 我昨天推送了最小的前端更改,因为我的应用程序在部署时崩溃了。 首先,我认为我的数据库连接有问题,因为这是堆栈跟踪中首先出现的内容:

com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

我正在使用 JawsDB 插件,所以我检查了那里的所有内容,在本地部署时,与数据库的连接正常工作。

但是在堆栈跟踪中我也发现了这个,在搜索错误的解决方案后我不知道该怎么做。

Caused by: javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
2021-07-31T20:45:15.672985+00:00 app[web.1]: at sun.security.ssl.HandshakeContext.<init>(HandshakeContext.java:171) ~[na:1.8.0_302-heroku]
2021-07-31T20:45:15.672985+00:00 app[web.1]: at sun.security.ssl.ClientHandshakeContext.<init>(ClientHandshakeContext.java:98) ~[na:1.8.0_302-heroku]
2021-07-31T20:45:15.672987+00:00 app[web.1]: at sun.security.ssl.TransportContext.kickstart(TransportContext.java:220) ~[na:1.8.0_302-heroku]
2021-07-31T20:45:15.672987+00:00 app[web.1]: at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:428) ~[na:1.8.0_302-heroku]
2021-07-31T20:45:15.672987+00:00 app[web.1]: at com.mysql.cj.protocol.ExportControlled.performTlsHandshake(ExportControlled.java:336) ~[mysql-connector-java-8.0.19.jar!/:8.0.19]
2021-07-31T20:45:15.672988+00:00 app[web.1]: at com.mysql.cj.protocol.StandardSocketFactory.performTlsHandshake(StandardSocketFactory.java:188) ~[mysql-connector-java-8.0.19.jar!/:8.0.19]
2021-07-31T20:45:15.672988+00:00 app[web.1]: at com.mysql.cj.protocol.a.NativeSocketConnection.performTlsHandshake(NativeSocketConnection.java:99) ~[mysql-connector-java-8.0.19.jar!/:8.0.19]
2021-07-31T20:45:15.672988+00:00 app[web.1]: at com.mysql.cj.protocol.a.NativeProtocol.negotiateSSLConnection(NativeProtocol.java:329) ~[mysql-connector-java-8.0.19.jar!/:8.0.19]

有没有人遇到过类似问题或知道如何解决这个问题?

提前致谢!

sx8382 回答:Spring Boot 应用程序在本地运行,但在部署到 Heroku 时不起作用

刚刚发现问题。它与对 TLSv1 和 TLSv1.1 的支持下降有关 在 2021 年 4 月的最新 JDK 更新中。

将 ?enabledTLSProtocols=TLSv1.2 添加到我的连接字符串解决了我的问题。

本文链接:https://www.f2er.com/3935.html

大家都在问