登录
首页 >  Golang >  Go问答

GRPC 网关超时问题:504错误

来源:stackoverflow

时间:2024-03-15 18:00:34 132浏览 收藏

在使用 gRPC 时,如果客户端出现 504 网关超时错误,可能是因为客户端无法代理。导致此问题的常见原因是代理配置不当或环境变量 HTTP_PROXY 或 HTTPS_PROXY 未正确设置。如果代理不起作用,则建议清除环境变量并重试。如果不需要代理,请确保已禁用环境变量。

问题内容

我正在学习rpc&grpc,现在就去吧,我对grpc感到困惑。

当我学习GitHub上的示例时(https://github.com/grpc/grpc-go/tree/master/examples),我遇到了一些问题。在服务器中,我使用 address = "ip:50051" 而不是 address = ":50051"(ip 是我的内网 ip),在客户端中我使用 address = "ip:50051" 而不是 address= "localhost: 50051“,然后运行服务器和客户端,在客户端我得到错误:

rpc 错误:代码 = 不可用 desc = 所有 SubConns 都处于 TransientFailure 状态,最新连接错误:连接错误:desc =“传输:拨号时出错,无法进行连接握手,响应:\”HTTP/1.0 504 网关超时\\r\\n连接:close

但是当我在golang中学习rpc时,在服务器和客户端中使用我的内网ip,就可以了。

所以我想知道为什么grpc出错了?


解决方案


客户端似乎无法代理(无法进行 HTTP Connect 握手)。

如果您的系统中启用了代理(设置了代理环境变量 HTTP_PROXYHTTPS_PROXY),请确保代理正常工作。

如果您不需要代理,请清除环境变量并重试。

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《GRPC 网关超时问题:504错误》文章吧,也可关注golang学习网公众号了解相关技术文章。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>