zoukankan      html  css  js  c++  java
  • grpc类型

    gRPC 基于如下思想:定义一个服务, 指定其可以被远程调用的方法及其参数和返回类型。gRPC 默认使用 protocol buffers 作为接口定义语言,来描述服务接口和有效载荷消息结构

    service HelloService {
      rpc SayHello (HelloRequest) returns (HelloResponse);
    }
    
    message HelloRequest {
      required string greeting = 1;
    }
    
    message HelloResponse {
      required string reply = 1;
    }

    grpc 支持定义四类服务方法:单向RPC、服务端流式RPC、客户端流式RPC、双向流式RPC

    • 单项 RPC,即客户端发送一个请求给服务端,从服务端获取一个应答,就像一次普通的函数调用。
    rpc SayHello(HelloRequest) returns (HelloResponse){
    }
    • 服务端流式 RPC,即客户端发送一个请求给服务端,可获取一个数据流用来读取一系列消息。客户端从返回的数据流里一直读取直到没有更多消息为止。
    rpc LotsOfReplies(HelloRequest) returns (stream HelloResponse){
    }
    • 客户端流式 RPC,即客户端用提供的一个数据流写入并发送一系列消息给服务端。一旦客户端完成消息写入,就等待服务端读取这些消息并返回应答
    rpc LotsOfGreetings(stream HelloRequest) returns (HelloResponse) {
    }
    • 双向流式 RPC,即两边都可以分别通过一个读写数据流来发送一系列消息。这两个数据流操作是相互独立的,所以客户端和服务端能按其希望的任意顺序读写,例如:服务端可以在写应答前等待所有的客户端消息,或者它可以先读一个消息再写一个消息,或者是读写相结合的其他方式。每个数据流里消息的顺序会被保持。
    rpc BidiHello(stream HelloRequest) returns (stream HelloResponse){
    }
  • 相关阅读:
    sql声明变量,及if -else语句、while语句的用法
    视图、事务
    索引
    相关子查询
    递归实现treeView下的省市联动
    创建sqlhelp类以封装对数据库的操作及对可空类型的操作
    ADO.Net操作数据库
    sql的case语句
    vue父组件异步数据子组件接收遇到的坑
    第一次用angularJS做后台管理点滴
  • 原文地址:https://www.cnblogs.com/zengyjun/p/10212450.html
Copyright © 2011-2022 走看看