Java Netty通道和多线程

Java Netty通道和多线程,java,netty,Java,Netty,我正在尝试编写一个小型java客户机,使用netty通过tcp连接传输日志消息。我对内蒂还很陌生,所以我想知道一些事情 我将有多个队列使用者阅读消息和发送日志;是否可以使用一个通道,或者每个队列使用者使用一个通道?处理程序是无状态的,所有数据都发送到同一个端点——据我所知,一个通道应该是线程安全的,多个通道可以提供更好的性能 提前谢谢 >有几个因素需要考虑,例如服务队列的数量、消息的总预期吞吐量和消息的大小。您可以考虑信道池以获得最佳性能。 参阅: 多个通道允许使用更多的处理器核心,因此在通道数

我正在尝试编写一个小型java客户机,使用netty通过tcp连接传输日志消息。我对内蒂还很陌生,所以我想知道一些事情

我将有多个队列使用者阅读消息和发送日志;是否可以使用一个通道,或者每个队列使用者使用一个通道?处理程序是无状态的,所有数据都发送到同一个端点——据我所知,一个通道应该是线程安全的,多个通道可以提供更好的性能


提前谢谢

>有几个因素需要考虑,例如服务队列的数量、消息的总预期吞吐量和消息的大小。您可以考虑信道池以获得最佳性能。

参阅:

多个通道允许使用更多的处理器核心,因此在通道数量超过核心数量之前,性能会更好。是的,单个通道是线程安全的


然后,根据您的流量,您可能甚至没有注意到差异。

最后,我将这两种方法结合起来-一个固定通道池,设置为可用处理器的数量(使用NettyUtils助手类发现),到目前为止似乎运行良好

啊,我从来都不知道频道池——我想最好的办法是尝试使用“共享”频道,如果排队的人又回来了,我可以试试这个频道池