Open sysulq opened 3 years ago
Yes we could. But in which case we can use it? AFAIK the use case is for bulding a grpc gateway like what etcd did.
Another problem, does it support Lua ecosystem?
This is a standard protocol which has no relations to specific languages.
The situation is indeed to build a grpc gateway, but we do not need to define any api bussiness related config in the gateway(apisix), but in the protobuf directly. And all we need to do is just to open/close the grpc trancode
plugin switch.
Just like what envoy did.
If i understood correctly, we need to refine these APIs from the protobuf and build a route radixtree and match routes further when the grpc-transcode plugin executing but still use HTTP protocol.
It may has some benefits although i can't find any reasons why we need to use HTTP protocol in grpc transcode here. Also, I don't know whether the ecosystem in Lua is complete.
You're right.
From the user side, like douyu, we strongly need this for better grpc api maintainance :-)
We can use
gRPC HTTP mapping annotation
to specifies the HTTP mapping for methods in protobuf as well, like this:details can be found in https://cloud.google.com/endpoints/docs/grpc/transcoding