설치를 완료했으니 예제를 통해 어느정도 기능에 대해 눈으로 익혀본다.

 

예제의 경우 gRPC 코드의 example폴더에 위치한다.

android, cpp, csharp, node, objective-c, php, protos, python, ruby

 

cpp 예제 빌드해보고 동작 확인해보기

  1. compression
  2. helloworld
  3. keyvaluestore - 빌드파일이 없음.
  4. load_balancing
  5. metadata
  6. route_guide

 

compression

빌드 make

실행파일 : greeter_server, greeter_client

proto 파일 : helloworld.proto

 

빌드

mkdir build 

cd build

cmake ..

make -j4

 

동작

Server : Server listening on 0.0.0.0:50051 

(서버실행시)Client : Greeter received: Hello world world world world

(서버실행X) Client: 14: failed to connect to all addresses
Greeter received: RPC failed

 

proto 파일 generate

protoc --cpp_out=cppout/ helloworld.proto

Generator 된 파일

helloworld.pb.cc helloworld.pb.h

 

 

실행파일

greeter_async_client  greeter_async_client2  greeter_async_server  greeter_client  greeter_server

 

metadata

 

route_guide

 

실제로 적용하고 운영할 떄 ProtoBuf, HTTP2 와 같은 이해부분이 필요함.

 

참고

gRPC-web 브라우저 적용 삽질기 : https://velog.io/@kyusung/grpc-web-example#grpc-web-%EB%B8%8C%EB%9D%BC%EC%9A%B0%EC%A0%80-%EC%A0%81%EC%9A%A9-%EC%82%BD%EC%A7%88%EA%B8%B0

Microservices with gRPC

 

 

RPC에서 REST까지 간단한 개념소개: https://www.slideshare.net/WonchangSong1/rpc-restsimpleintro

 

'gRPC' 카테고리의 다른 글

[gRPC]01. 정리 및 설치  (0) 2020.07.16

+ Recent posts