mirror of https://github.com/grpc/grpc.git
The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#)
https://grpc.io/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.0 KiB
33 lines
1.0 KiB
1 year ago
|
# gRPC C++ Wait-For-Ready Example
|
||
|
|
||
|
The Wait-For-Ready example builds on the
|
||
|
[Hello World Example](https://github.com/grpc/grpc/tree/master/examples/cpp/helloworld)
|
||
|
and changes the gRPC client and server to show how to set wait-for-ready.
|
||
|
|
||
|
For more information on wait-for-ready in gRPC, please refer to
|
||
|
[gRPC Wait For Ready Semantics](https://github.com/grpc/grpc/blob/master/doc/wait-for-ready.md).
|
||
|
|
||
|
## Running the example
|
||
|
|
||
|
First run the client -
|
||
|
|
||
|
```
|
||
|
$ tools/bazel run examples/cpp/wait_for_ready:greeter_callback_client
|
||
|
```
|
||
|
|
||
|
On running this, we'll see 10 RPCs failed due to "Connection refused" errors.
|
||
|
These RPCs did not have WAIT_FOR_READY set, resulting in the RPCs not waiting
|
||
|
for the channel to be connected.
|
||
|
|
||
|
The next 10 RPCs have WAIT_FOR_READY set, so the client will be waiting for the
|
||
|
channel to be ready before progressing.
|
||
|
|
||
|
Now, on a separate terminal, run the server -
|
||
|
|
||
|
```
|
||
|
$ tools/bazel run examples/cpp/helloworld:greeter_callback_server
|
||
|
```
|
||
|
|
||
|
The client channel should now be able to connect to the server, and the RPCs
|
||
|
should succeed.
|