TIL 2022-03-06 Shell, protobuf, gRPC
RPC는 Remote Procedure Call로 네트워크의 다른 컴퓨터의 프로그램에 서비스를 요청하는 콜을 의미한다. client가 서비스를 call하면 server에서 이 서비스를 제공하는 것이다. gRPC는 구글에서 만든 RPC 플랫폼으로 protocol buffer과 RPC를 사용한다. IDL로 proto3를 사용하고, SSL/TLS를 사용하여 서비스 및 데이터를 암호화한다. 또한 HTTP 2.0을 사용한다. gRPC에서는 클라이언트 측에서 마치 로컬에서 사용하는 것 처럼 서버의 메서드를 호출할 수 있다. 따라서 다양한 환경에서 실행되고 통신할 수 있다. gRPC에서는 최신 IDL인 proto3를 사용하고, Java, C++, Dart, Python, Objective-C, C#, Android ..