使用AWS ALB Ingress Controller时SSE通道触发INTERNAL_ERROR关闭的问题求助
使用AWS ALB Ingress Controller时SSE通道触发INTERNAL_ERROR关闭的问题求助
大家好,我目前遇到一个SSE(Server-Sent Events)通道的异常问题,我的微服务是通过AWS ALB Ingress Controller对外暴露的,整体请求流程如下:
- AWS Application Load Balancer
- Ingress
- Service
- Pod/微服务SSE通道
现在的问题是,网页端打开后,这个SSE连接会随着时间推移不断出现INTERNAL_ERROR报错,我尝试用curl复现该问题,得到了以下测试结果:
直接通过Ingress的私有IP发起请求时,连接能一直保持打开状态:
root@ubuntu-pod:/# curl -X GET http://10.22.xx.xx:8080/myapp/sse/api/v1/events data:{"message":"SSE channel opened"} ^C
但如果通过DNS域名请求,连接在建立后不久就会关闭,还会返回错误,和网页端的表现完全一致:
root@ubuntu-pod:/# curl -X GET https://mydnssite/myapp/sse/api/v1/events -N --insecure data:{"message":"SSE channel opened"} curl: (92) HTTP/2 stream 0 was not closed cleanly: INTERNAL_ERROR (err 2)
有没有朋友遇到过类似的问题?或者能给我一些排查的方向?
备注:内容来源于stack exchange,提问作者user1911
相关产品推荐
相关产品推荐

