baidu / sofa-pbrpc

A light-weight RPC implement of google protobuf RPC framework.
Other
2.13k stars 655 forks source link

RpcServer::Start端口冲突问题 #192

Open jackerlu opened 7 years ago

jackerlu commented 7 years ago

您好,目前我这边有个问题想确认下,就是调用RpcServer::Start时,如果传入的server_address已经被绑定的话,sofarpc里面会自动重新分配一个空闲的端口绑定吗?如果可以的话,要怎样才能获取重新分配的空闲端口呢?而且我这边有尝试在调用RpcServer::Start时,传入的server_address为0.0.0.0:0,这样也是可以成功的,但是怎样才能获取我真正绑定的端口呢?

qinzuoyan commented 7 years ago

不会自动重新分配一个空闲的端口绑定,会报错

jackerlu commented 7 years ago

这样啊,还有个问题想请教下,就是咱们sofarpc作为服务端时对于client端的连接数有什么限制吗,我这边有个服务作为sofarpc 的TCP client端,假设为B,连接到sofarpc server端A,是可以正常发送数据和接收数据,但是过了几天后,B这边发送数据给A时,B端会提示RPC_ERROR_CONNECTION_CLOSED:init stream failed:connection refused,但是我A端的sofarpc server服务实际上是有在运行的

cyshi commented 7 years ago

看一下server监听的端口是否还在

jackerlu commented 7 years ago

en ,还在的,咱们这个sofarpc server端是对连接数之类的有什么限制吗?

cyshi commented 7 years ago

可以限制,但是默认配置的话是不开的,参考 RpcServerOptions

jackerlu commented 7 years ago

除了server端监听的端口不存在外,还有什么其他情况会导致sofaclient端打印RPC_ERROR_CONNECTION_CLOSED:init stream failed:connection refused呢?