You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@shenyu.apache.org by zhangleispring <zh...@gmail.com> on 2021/05/25 06:27:55 UTC

回复:Access gprc services in the gateway in a better way.

I've researched apisix and enovy,They all upload proto files in the gateway or generate them through scripts.
I think this is a feasible way






在 2021年5月25日 12:57,midnight<ll...@163.com> 写道:


Hello everyone. There are still some problems with the way the shneyu-gateway connects to grpc. The shneyu-plugin-grpc and shneyu-client-grpc modules need to dependency on the shneyu-common module. Is there any better way to implement grpc service access? The methods collected are: 1. Obtain the descriptor by reflect, and then call the service, but there is one more rpc call. 2. Simulate the grpc protocol, but it is more difficult, and the generated class is too complicated. 3. Upload the proto file in the background or store it in the form of metadata, and parse the proto generation method descriptor. 4. The client side reports the grpc service metadata to the registry center. 5. Define the same proto file on the plugin and the client side, and the client side exposes the service by the proto file. Welcome everyone to discuss the above methods, or express your point, in a better way to access gprc service in the gateway.

Re: Access gprc services in the gateway in a better way.

Posted by XiaoYu <xi...@apache.org>.
Hi , zhangleispring & wei liu

4. The client side reports the grpc service metadata to the registry center.

Is this solution not feasible and what is the difficulty of it?

thanks,

wei liu <lw...@apache.org> 于2021年5月25日周二 下午2:49写道:

> 3. Upload the proto file in the background or store it in the form of
> metadata, and parse the proto generation method descriptor.
>
>
>    -
>
>    It seems like a good idea
>
>
> zhangleispring <zh...@gmail.com> 于2021年5月25日周二 下午2:28写道:
>
> > I've researched apisix and enovy,They all upload proto files in the
> > gateway or generate them through scripts.
> > I think this is a feasible way
> >
> >
> >
> >
> >
> >
> > 在 2021年5月25日 12:57,midnight<ll...@163.com> 写道:
> >
> >
> > Hello everyone. There are still some problems with the way the
> > shneyu-gateway connects to grpc. The shneyu-plugin-grpc and
> > shneyu-client-grpc modules need to dependency on the shneyu-common
> module.
> > Is there any better way to implement grpc service access? The methods
> > collected are: 1. Obtain the descriptor by reflect, and then call the
> > service, but there is one more rpc call. 2. Simulate the grpc protocol,
> but
> > it is more difficult, and the generated class is too complicated. 3.
> Upload
> > the proto file in the background or store it in the form of metadata, and
> > parse the proto generation method descriptor. 4. The client side reports
> > the grpc service metadata to the registry center. 5. Define the same
> proto
> > file on the plugin and the client side, and the client side exposes the
> > service by the proto file. Welcome everyone to discuss the above methods,
> > or express your point, in a better way to access gprc service in the
> > gateway.
>

Re: Access gprc services in the gateway in a better way.

Posted by wei liu <lw...@apache.org>.
3. Upload the proto file in the background or store it in the form of
metadata, and parse the proto generation method descriptor.


   -

   It seems like a good idea


zhangleispring <zh...@gmail.com> 于2021年5月25日周二 下午2:28写道:

> I've researched apisix and enovy,They all upload proto files in the
> gateway or generate them through scripts.
> I think this is a feasible way
>
>
>
>
>
>
> 在 2021年5月25日 12:57,midnight<ll...@163.com> 写道:
>
>
> Hello everyone. There are still some problems with the way the
> shneyu-gateway connects to grpc. The shneyu-plugin-grpc and
> shneyu-client-grpc modules need to dependency on the shneyu-common module.
> Is there any better way to implement grpc service access? The methods
> collected are: 1. Obtain the descriptor by reflect, and then call the
> service, but there is one more rpc call. 2. Simulate the grpc protocol, but
> it is more difficult, and the generated class is too complicated. 3. Upload
> the proto file in the background or store it in the form of metadata, and
> parse the proto generation method descriptor. 4. The client side reports
> the grpc service metadata to the registry center. 5. Define the same proto
> file on the plugin and the client side, and the client side exposes the
> service by the proto file. Welcome everyone to discuss the above methods,
> or express your point, in a better way to access gprc service in the
> gateway.