我正在考虑将gRPC用于b2b API,我无法弄清楚gRPC服务器是否可以在另一个支持http2的Web服务器上运行?
在官方网站上提供的示例中,gRPC API始终在特定端口上的基于内部网络的服务器上运行.
所以,如果让我说我有几个gRPC应用程序,看起来我必须在不同的端口上运行它们.
但是我希望有一个API入口点(像单个端口443上的jetty这样的Web服务器)来管理URL并将它们映射到特定的gRPC服务实现.
是否可以使用gRPC?
解决方法:
不,grpc-java无法作为servlet响应RPC.
支持HTTP / 2的Servlet容器非常新,gRPC还没有对它们进行过多的调查.使用异步servlet API来实现gRPC服务器(作为Netty服务器的替代方案)似乎是可行的,除了可能用于预告片.当服务器是HTTP / 2时,如何发送预告片并不是100%清楚,因为使用HTTP / 1的常见技术是servlet手动执行HTTP / 2中不存在的分块编码.无论如何,它没有实现.
编辑:一个issue现在打开GitHub.