questions
questions copied to clipboard
micro --registry=etcd call 报错
Hi. 谢谢你写的的教程。
我跟着你 part1 写了 user。
我 namespace
是 go.micro.demo
然后运行测试 Service.QueryUserByName
$ micro --registry=etcd call go.micro.demo.srv.user User.QueryUserByName '{"userName":"micro"}'
返回结果
error calling go.micro.demo.srv.user.User.QueryUserByName: {"id":"go.micro.client","code":500,"detail":"connection error: dial tcp [fe80::1]:64053: connect: no route to host","status":"Internal Server Error"}
我 etcd 环境是 Docker 并且在运行的时候与你教程上的结果一致。
但是就是在测试的时候,报这个500的错误。
服务运行output
服务测试 output
期待你的解答。谢谢
IPv6?我没有这个网络,看你的服务没有问题。
把go-micro的版本升到最新试试,再重新编译micro
新版本不行,这个问题是网卡的问题。
后面我在每一个运行的时候 指定serve_address 就可以。。公司环境劝退。
实在没辙。我觉得,在这种特定的情况,这个算是一个 micro 的 issue。看网络上的一些资料,这种情况还挺常见的。
不太紧急的问题,ip会拿查询到的第一个,这里确实有待商榷,不过可以使用指定ip先来用着,线上环境一般不会有多网卡的,PC机才会有。