• grpc 安装


    安装请参考官方资料-快速开始,安装gRPC需要安装Go、protocol buffer、protoc-gen-go、gRPC等。

    1.安装Go,grpc是用Golang开发的,所以需要安装Go;
    2.下载protocol buffer,这是gRPC的协议编译工具,写好proto之后,需要用这个编译。windows下直接下载编译好的包,然后将bin目录加到环境变量

    查看版本
    protoc --version

    3.安装相关插件:protoc-gen-go; 编译协议需要用到该包

    export GO111MODULE=on # Enable module mode
    go get github.com/golang/protobuf/protoc-gen-go
    

    4.安装gRPC包

    go get google.golang.org/grpc

    5.编写gRPC协议

    syntax = "proto3";
    
    package test
    
    // 定义 Req 消息结构
    message Req {
        // 类型 字段 = 标识号
        string jsonStr = 1;
    }
    
    // 定义 Res 消息结构
    message Res {
        string backJson = 1;
    }
    
    // 可以定义多个服务,每个服务内可以定义多个接口
    service Waiter {
        // 定义接口 (结构体可以复用)
        // 方法 (请求消息结构体) returns (返回消息结构体) {}
        rpc DoMD5 (Req) returns (Res) {}
    }
    

    6.编译协议

    protoc --go_out=plugins=grpc:./test/ ./test.proto
    1. 测试demo,最好使用官方demo
    2. 可能会遇到的问题
      8.1.undefined: grpc.SupportPackageIsVersion6 和 undefined: grpc.ClientConnInterface 解决办法
      这是因为grpc的版本和protoc-gen-go版本不一致造成的。删除这两个包。安装最新的即可。参考资料
    go get -u google.golang.org/grpc
    
    export GO111MODULE=on # Enable module mode
    go get github.com/golang/protobuf/protoc-gen-go

    8.2.protoc-gen-go-grpc:找不到程序或不可执行(protoc-gen-go-grpc: program not found or is not executable)
    没有安装protoc-gen-go,也有可能是环境变量没生效(关闭shell客户端,重新打开即可)

    export GO111MODULE=on # Enable module mode
    go get github.com/golang/protobuf/protoc-gen-go

    各种语言使用grpc指南:
    1.Go
    2.Python
    3.C++
    4.Java

  • 相关阅读:
    对于数据库表排他更新的理解
    小学数学题
    胜败兵家事不期
    ORACLE外键约束(FORIGEN KEY)
    spring客户端jsp与服务端交互方法
    nodejs学习笔记package.json
    关于viewport
    dl,dt,dd的用法
    304-NOT MODIFIED
    $(document).ready()和 window.onload的区别
  • 原文地址:https://www.cnblogs.com/gelu/p/13335235.html
Copyright © 2020-2023  润新知