grpc:grpc 是否提供了在同一进程中访问服务器的有效方法?
grpc: does grpc provide efficient way to access server within the same process?
如果客户端和服务端在同一个进程,有没有快捷方式可以高效访问?比如没有消息编组,直接调用函数等
Java 有一个能够避免序列化的进程内传输(InProcessChannelBuilder 和 InProcessServerBuilder)。如果您在客户端和服务器上都使用 directExecutor() 那么它会变得更接近 "direct function call".
C++ 也有进程内传输(服务器上的 InProcessChannel()),但它会序列化和反序列化消息。由于大多数基于 C 的语言使用可变协议缓冲区,即使它可以避免序列化,它仍然需要制作某种副本; Java 的协议缓冲区是不可变的。
如果客户端和服务端在同一个进程,有没有快捷方式可以高效访问?比如没有消息编组,直接调用函数等
Java 有一个能够避免序列化的进程内传输(InProcessChannelBuilder 和 InProcessServerBuilder)。如果您在客户端和服务器上都使用 directExecutor() 那么它会变得更接近 "direct function call".
C++ 也有进程内传输(服务器上的 InProcessChannel()),但它会序列化和反序列化消息。由于大多数基于 C 的语言使用可变协议缓冲区,即使它可以避免序列化,它仍然需要制作某种副本; Java 的协议缓冲区是不可变的。