我对(g)rpc有点新,而且我不太了解这个概念。我们在一个Kubernetes集群中有一组NodeJS服务器,通过grpc相互通信。 rpc接口针对客户端新贵上的每台服务器进行设置。gRPC在服务器重启时丢失连接
我们最近发现,重新启动服务器后,其客户端失去与该服务器的连接。也就是说,在该服务器重新启动之后,以前工作的rpc对服务器的调用不再起作用。直到我们以正确的顺序重新启动服务器,它才会重新启动。
我虽然是通过一个地址(主机+端口)告诉客户端,这里是一个你可以调用的过程。并且在调用该过程时,地址被调用,在服务器上处理并返回。如果这样工作,客户端不会在乎rpc调用之间服务器是否重新启动了0次或100次。
但是通过上面对客户端rpc调用失败/超时的描述,似乎有一个类似于套接字的连接,其中在两个部分都在运行时建立和维护连接。
它是如何工作的,是否需要对我的客户端上的rpc服务器执行健康检查,以便在服务器重新启动时重新建立接口?
感谢您的时间。
你使用的是什么版本的gRPC? – murgatroid99
你看到什么错误让你认为是这种情况?有时gRPC记录警告,但保持正常工作。请在问题中更具描述性和具体性,以便人们可以提供帮助。 –