go-zero/doc/rpc.md
2020-07-26 17:09:05 +08:00

545 B
Raw Blame History

rpc设计规范

  • 目录结构

    • service/remote目录下按照服务所属模块存放比如用户的profile接口目录如下

      service/remote/user/profile.proto

    • 生成的profile.pb.go也放在该目录下并且profile.proto文件里要加上package user;

  • 错误处理

    • 需要使用status.Error(code, desc)来定义返回的错误
    • code是codes.Code类型尽可能使用grpc已经定义好的code
    • codes.DeadlineExceeded, codes.Internal, codes.Unavailable, codes.DataLoss错误会被自动熔断