升级firebase-admin-java至9.3.0后调用sendEach遇SSL握手错误
Firebase Admin Java SDK 9.3.0调用sendEach出现SSL握手终止异常的原因分析
你遇到的Remote host terminated the handshake异常根源是SSL握手过程中远程端(Firebase服务器)主动关闭了连接,结合仅升级SDK版本的背景,可能的原因如下:
TLS协议版本不兼容
Firebase Admin SDK 9.x系列可能默认启用了TLS 1.3协议,而你的运行JDK版本(比如JDK 8)默认未开启对TLS 1.3的支持,或者网络环境(防火墙、代理)拦截了TLS 1.3的握手请求,导致Firebase服务器无法完成握手而终止连接。依赖库的SSL配置冲突
升级至9.3.0版本后,SDK依赖的google-api-client、netty等HTTP客户端组件版本发生了变更,这些组件的SSL初始化逻辑可能和你项目中已有的SSL相关依赖(如自定义的SSL上下文、第三方加密库)产生冲突,引发握手异常。批量请求的网络限制
sendEach发送批量消息时请求体数据量较大,SDK升级后可能调整了默认的连接超时、请求缓冲区大小等参数,或者你的网络环境对大请求的SSL握手环节有拦截限制,导致连接被提前终止。Firebase服务端临时故障
极少数情况下,Firebase推送服务的特定节点可能出现临时的SSL握手服务异常,这种情况通常是偶发的,重试请求后可能恢复正常。
内容的提问来源于stack exchange,提问作者ReBl
相关产品推荐
相关产品推荐

