gRPC には、当然ながらクライアントサイドでタイムアウトが設定できます。このとき、HTTP/2 上でどういうフレームが流れるのかを整理してみます。 タイムアウト設定 golang node HTTP/2 での挙動 まとめ タイムアウト設定 golang Golang の場合は、 context.WithTimeout を使ってタイムアウトを指定する。 ctx, cancel := context.WithTimeout(context.Background(), time.Second) defer cancel() req := &pb.EchoRequest{Message: message} node node.js の場合は、CallOptions で指定することになります。 const timeout = 2000 // milliseconds client.SayHello
![gRPC におけるタイムアウト時の挙動 - 理系学生日記](https://cdn-ak-scissors.b.st-hatena.com/image/square/ab514780ddae3ef2eec0db00512cab1fae66382c/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fk%2Fkiririmode%2F20190623%2F20190623083413.png)