smallnest / rpcx

Best microservices framework in Go, like alibaba Dubbo, but with more features, Scale easily. Try it. Test it. If you feel it's better, use it! 𝐉𝐚𝐯𝐚有𝐝𝐮𝐛𝐛𝐨, 𝐆𝐨𝐥𝐚𝐧𝐠有𝐫𝐩𝐜𝐱! build for cloud!
https://rpcx.io
Other
8.11k stars 1.17k forks source link

有没有可能增加一个接口格式,可以让RPCX方法接口和GRPC保持一致? #760

Closed ansoda closed 1 year ago

ansoda commented 2 years ago

grpc接口格式是:

func (this *Greeter) SayHello(ctx context.Context, in *Sample.Request) (out *Sample.Response, err error) {
}

而rpcx接口格式是:

func (this *Greeter) SayHello(ctx context.Context, in *Sample.Request, reply *Sample.Response) err error {
}

有没有可能在rpcx内部通过反射做一个判断,让两种方式都可以支持。当用户实现grpc格式时,rpcx不需要通过pool创建reply对象。 这样可以让通过grpc 实现的方法以最小改动代价迁移到rpcx框架下面。

medivh666 commented 1 year ago

建议提供一个回调方法,让用户自定义调用 函数格式。

smallnest commented 1 year ago

例子: https://github.com/rpcxio/rpcx-examples/tree/master/handler