使用 micro ,请求时间超过 5 秒,超时问题,大家有遇到吗?
最近在使用 micro ,遇到一个问题就是,前端发请求到后端,超过5秒,就返回如下错误信息:{"id":"go.micro.client","code":408,"detail":"call timeout: context deadline exceeded","status":"Request Timeout"} ,设置了micro - client 的 RequestTime 时间,但是没有效果,大家有遇到同样的问题吗?怎么解决的? 初始化 Service 部分代码如下:
// New Service
service := http.NewService(
micro.Server(server.NewServer()),
micro.Client(client.NewClient(
client.RequestTimeout(60*time.Second),
client.DialTimeout(60*time.Second),
)),
micro.Transport(
transport.NewTransport(
transport.Timeout(60*time.Second),
),
),
micro.RegisterTTL(time.Second*30),
micro.RegisterInterval(time.Second*10),
)
共 3 个回复
smallfish_lkc
你好,请问一下服务间调用的RPC和transport是什么关系呢?谢谢
bigbear2
这个应该是httpcontext里面的deadline设置,主要是用于请求超时的服务处理。
Sure367
请问一下,我写再服务端的有用吗
service :=grpc.NewService(
micro.Client(client.NewClient(
client.RequestTimeout(10time.Second),
client.DialTimeout(10time.Second),
)),
micro.Transport(
transport.NewTransport(
transport.Timeout(10*time.Second),
)),