1

我使用 Finalgehttps://twitter.github.io/finagle/来测试超时情况,如下所示:

  1. 服务器端:在 RPC 定义中,只需休眠 10 秒并返回。
  2. 客户端:使用withinlike调用RPC函数within(50.milliseconds) onSuccess { ... } onFailure { ... }
  3. 许多客户端:使用大约 100 个客户端同时调用 RPC 函数

结果当然是所有的 RPC 都超时了。但是,当我使用netstat检查连接时,我发现有 100 个ESTABLISHED连接。问题是我可以限制 Finagle 创建的连接数吗?

4

1 回答 1

1

是的,您可以使用

hostConnectionLimit(10)

在您的 ClientBuilder 中限制与每个主机的连接。这里的“主机”是指服务器端的盒子。

源代码在这里

于 2015-05-07T08:54:31.670 回答