• gRPC


    golang版本。

    1、基础软件

      protoc: 支持序列化的高效、低占用软件。

      protoc-gen-go: 支持go编译的插件。

    2、脚手架

      生成核心交互逻辑,当前版本,引自官网: https://grpc.io/docs/languages/go/quickstart/#regenerate-grpc-code

    protoc --proto_path=IMPORT_PATH  --go_out=OUT_DIR  --go_opt=paths=source_relative path/to/file.proto

      解释:

        proto_path或者-I :指定 import 路径,可以指定多个参数,编译时按顺序查找,不指定时默认查找当前目录。

          proto 文件中也可以引入其他 .proto 文件,这里主要用于指定被引入文件的位置。

        go_out:golang编译支持,指定输出文件路径

        go_opt:指定参数,比如--go_opt=paths=source_relative就是表明生成文件输出使用相对路径。

        path/to/file.proto :被编译的 .proto 文件放在最后面

      file.proto内容

     1 syntax = "proto3";
     2 
     3 //option go_package = "path;name";
     4 //path 表示生成的go文件的存放地址,会自动生成目录的。
     5 //name 表示生成的go文件所属的包名
     6 option go_package="./;proto";
     7 // 定义包名
     8 package proto;
     9 
    10 // 定义Greeter服务
    11 service Greeter {
    12   // 定义SayHello方法,接受HelloRequest消息, 并返回HelloReply消息
    13   rpc SayHello (HelloRequest) returns (HelloReply) {}
    14 }
    15 
    16 // 定义HelloRequest消息
    17 message HelloRequest {
    18   // name字段
    19   string name = 1;
    20 }
    21 
    22 // 定义HelloReply消息
    23 message HelloReply {
    24   // message字段
    25   string message = 1;
    26 }
  • 相关阅读:
    053-157
    053-496
    053-128
    053-167
    053-250
    053-674
    离职申请
    日记


  • 原文地址:https://www.cnblogs.com/supermarx/p/16418115.html
Copyright © 2020-2023  润新知