grpc 예제

이 디렉토리에는 C++, Node.js, 파이썬, 루비, 목표-C, PHP 및 C#과 같은 모든 C 기반 gRPC 구현에 대한 코드 예제가 포함되어 있습니다. 관련 하위 디렉터리에서 즐겨 찾는 언어와 관련된 예제 및 지침을 찾을 수 있습니다. 프로토부프 기반 코드를 생성하는 방법에는 여러 가지가 있으며, 이 예제에서는 grpc-java GitHub 페이지에 설명된 대로 프로토부프-메이븐 플러그인을 사용합니다. 이번에는 클라이언트 측 스트리밍 예제에서와 같이 메시지를 읽고 쓰는 데 사용할 수 있는 RouteGuide_RouteChatServer 스트림을 얻습니다. 그러나 이번에는 클라이언트가 메시지 스트림에 메시지를 작성하는 동안 메서드의 스트림을 통해 값을 반환합니다. 예제 디렉터리 README의 지침에 따라 클라이언트와 서버를 빌드하고 실행합니다. 이 명령을 실행하면 routeguide 디렉터리에서 다음 파일이 생성됩니다. 메서드 구현이 스레드에서 안전한지 확인해야 합니다. 이 예제에서는 feature_list_는 시공 후 변경되지 않으므로 설계상 안전합니다. 그러나 서비스 수명 동안 feature_list_가 변경되는 경우 이 멤버에 대한 액세스를 동기화해야 합니다. 이 예제에서는 사람에 대한 정보가 포함된 첫 번째 메시지와 인사말을 포함하는 두 번째 메시지를 정의합니다.

그런 다음 클라이언트에서 사람 메시지를 가져와 서버에서 인사말을 반환하는 sayHello(RPC 메서드)에 모두 사용됩니다. 아래는 POM 파일에서 메이븐 프로젝트의 XML 표현입니다. 예제를 컴파일하고 실행하는 데 필요한 종속성이 포함되어 있습니다. 이 예제에서는 차단 스텁을 구현합니다. 예제 디렉터리에서 생성된 코드 버전을 이미 제공했기 때문에 이 명령을 실행하면 새 파일을 만드는 대신 적절한 파일이 재생성됩니다. 생성된 코드 파일을 route_guide_pb2.py 및 route_guide_pb2_grpc.py라고 하며 포함합니다: 이 예제 코드를 사용하는 개요 및 자습서를 포함한 보다 포괄적인 설명서의 경우 grpc.io 방문하십시오. 이 gRPC 예제를 사용 하려면 HTTPS 각 예제 디렉토리 설치 지침 및 우리의 가장 간단한 Hello World 예제를 실행 하는 방법을 포함 하 여 적절 한 언어에 대 한 빠른 시작 지침을 사용 하 여 수정 해야 합니다. 포트 8080에 gRPC 서버를 만들고 우리가 정의한 HelloServiceImpl 서비스를 추가합니다. start() 서버가 시작됩니다. 이 예제에서는 awaitTermination()를 호출하여 서버가 프롬프트를 차단하는 포그라운드에서 실행상태를 유지하도록 합니다. 이 예제에서 Java 코드를 생성하는 동안 .proto에 java_package 파일 옵션을 지정했습니다. .proto에서 생성한 RouteGuideGrpc 클래스에 제공됩니다.

또한 패키지 이름 및 다른 클래스에 대해 별도의 파일을 생성할 수 있는 옵션 외에 사용되는 프로토콜 버퍼 링 언어(proto3)의 버전도 정의합니다. 라우터 URL에 대해 자체 서명된 인증서 생성: .proto 파일에서 프로토콜 버퍼 메시지 유형을 정의하여 직렬화하는 정보를 구조화하는 방법을 지정합니다. 각 프로토콜 버퍼 메시지는 일련의 이름-값 쌍을 포함하는 작은 논리 적 정보 레코드입니다. gRPC 프레임워크용 스프링 부팅 스타터는 스프링 부팅 응용 프로그램의 일부로 @GRpcService 활성화된 Beans를 사용하는 임베디드 gRPC 서버를 자동으로 구성하고 실행합니다. 스타터는 스프링 부트 버전 1.5.X와 2.X.X를 모두 지원합니다.

Ce contenu a été publié dans Non classé par samuel. Mettez-le en favori avec son permalien.