同一台服务器 rpc通过jsonNL方式,开启2个进程,一个进程通过tcp调用另外个进程。很高的概率卡死,出现busy

孟子说2020

同一台服务器 rpc通过jsonNL方式内部调用,开启2个进程,一个进程通过tcp调用另外个进程。很高的概率卡死,出现busy。

1132 1 0
1个回答

walkor

用该是自己网络调用自己了导致死锁了。
rpc服务端开启worker->reusePort = false;
多开一些进程试下。

如果有自己调用本机服务的情况,最好直接函数调用,性能更好,不会死锁。

  • 孟子说2020 2021-04-09

    多开进程命中自己的进程概率就低一点了 ,这个情况是不是自己进程将自己调用到了。如果进程busy是不会调用到的吧,服务外调用就不会有这种情况是吧

  • 孟子说2020 2021-04-09

    如果一个进程是busy下一个请求来还会分到busy上吗

  • walkor 2021-04-09

    服务端 worker->reusePort = false; ,客户端是断连接,那么新的连接及其请求不会分配到busy的进程上。

年代过于久远,无法发表回答
🔝