项目创建

新建项目目录

创建项目目录hello,然后进入hello目录

mkdir hello && cd hello

goctl创建模板

使用goctl工具创建proto文件模板

goctl rpc template -o=hello.proto

修改模板

在hello目录下已经生成hello.proto模板文件,编辑proto文件

gotcl生成rpc服务

指定hello.proto生成rpc服务

goctl rpc proto -src hello.proto -dir .

服务目录结构

结构如下:

├── test
  │   ├── etc
  │   │   └── hello.yaml
  │   ├── greeter
  │   │   ├── greeter.go
  │   │   └── types.go
  │   ├── internal
  │   │   ├── config
  │   │   │   └── config.go
  │   │   ├── logic 
  │   │   │   └── sayhellologic.go
  │   │   ├── server 
  │   │   │   └── greeterserver.go
  │   │   └── svc
  │   │       └── servicecontext.go
  │   └── pb 
  │       └── hello.pb.go
  └── hello.proto
  └── hello.go

常见问题

  • 如果遇到 grpc 错误,请替换 grpc 版本为 1.29.1