RPC 呼び出しリクエストはタイムアウトになりますか?
RPC (リモート プロシージャ コール) は、別のプロセスの関数を呼び出すメカニズムです。ただし、ネットワーク遅延やその他の問題により、呼び出しが停止することがあります。
RPC にタイムアウト メカニズムが組み込まれていない場合、そのような状況はチャネルを使用してタイムアウト パターンを実装することで処理できます。
import "time" c := make(chan error, 1) go func() { c <- client.Call("Service", args, &result) } () select { case err := <-c: // use err and result case <-time.After(timeoutNanoseconds): // call timed out }
この例では:
以上がRPC 呼び出しのタイムアウトを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。