使用 HTTPS 对 Google Cloud Load Balancer 进行负载测试时如何修复错误“SSLHandshakeException”?

使用 HTTPS 对 Google Cloud Load Balancer 进行负载测试时如何修复错误“SSLHandshakeException”?

当我通过 HTTPS 对我的网站执行负载测试时,当我模拟大量并发用户(>500 / 秒)时,我收到多个与 SSL 握手相关的错误。

以下是我收到的错误:

错误 #1

javax.net.ssl.SSLHandshakeException: Remote host terminated the handshake

错误 #2

javax.net.ssl.SSLException: Socket closed

错误 #3

javax.net.ssl.SSLException: Read timed out

事实是,一切都由 GCP 管理,特别是负载均衡器,其中我的前端是与有效证书关联的 HTTPS。

此外,我的后端容量似乎足够高,可以支持一切。瓶颈似乎是我的负载均衡器。

测试是使用 JMeter 直接从我的计算机上进行的。

那么,是什么原因导致了这个问题以及我该如何解决它?

答案1

据我所知,并非所有请求都会显示错误。因此,可能有些实例没有像其他实例那样配置。您可以验证所有 VMS 是否都支持与您的 JVM 相同的 TLS 版本。这个想法是访问这里

相关内容