0

Netty 连接池

我想知道哪些选项或如何在 netty 中实现客户端连接池。

4

1 回答 1

1

我还没有实现这个,所以这只是一些有根据的猜测,但我会考虑结合以下内容:

通用对象池将支持您创建连接缓存,以远程套接字地址作为键,因此您可能会发出如下请求:

pool.borrowObject("www.google.com:80");

不确定通道组,除了它是一次性针对所有包含的通道发出指令的好方法(例如 close()),因此让池的PooledObjectFactory始终将其创建的所有通道插入到频道组也是如此。它是自我维护的,因为通道在关闭时会从组中弹出。

在许多情况下,Commons Pooling 对我来说都非常有用,尽管主要是在我试图汇集和重用昂贵的资源时。这是您查看客户端连接的方式吗?

2017 年 8 月 30 日更新:

在 Netty 4.x 中执行此操作的首选方法是使用 ChannelPool。Netty 4.0:通道池 Netty 4.1:通道池

于 2013-02-19T20:36:53.703 回答