ksk*_*cou 5 architecture proto microservices grpc grpc-go
我正在使用微服务架构创建系统。有两个微服务A和B,每个都位于自己的存储库中。
有一个user.proto包含protobuf定义和gRPC方法签名的文件。用作服务器的A用途user.pb.go。B使用user.pb.go作为(一个客户A)。
一种构造方法是在中出现原型定义A,并B具有对以下内容的代码依赖性A:
A
??? pb
? ??? user.proto
? ??? user.pb.go
??? service.go
B
??? service.go
B-->A
Run Code Online (Sandbox Code Playgroud)
另一种方法是使用另一个P包含原始定义的回购,A并B取决于新的回购:
A
??? service.go
B
??? service.go
P
??? user.proto
??? user.pb.go
A-->P
B-->P
Run Code Online (Sandbox Code Playgroud)
或者,新的仓库可能只包含原始文件,并且在A和B中都生成了代码:
A
??? service.go
??? pb
??? user.pb.go
B
??? service.go
??? pb
??? user.pb.go
P
??? user.proto
Run Code Online (Sandbox Code Playgroud)
这里有什么更好的方法?