在Netty 4.1中读取和写入相同的通道

时间:2015-07-04 12:41:59

标签: sockets netty

Netty在同一个频道上处理读写是否存在问题。 我们在Netty 4.1中构建了一个消息代理。我们为负载测试执行了两种类型的测试。

1)客户端A向代理发送PUBLISH数据包。代理进行一些处理,并通过相同的通道将数据包发送回同一客户端。

2)第二种情况是客户端A通过其频道向代理发送PUBLISH数据包。代理执行一些处理,然后将数据包随机发送到当时连接到代理的任何一个客户端(当前客户端除外)。

我们发现在第一种情况下,Netty的读取操作需要花费大量时间,而在第二种情况下,一切都运行得非常顺利,我们得到了理想的理论延迟。

所以只想确认Netty如何在同一个频道上处理读写。

1 个答案:

答案 0 :(得分:1)

在同一频道上进行读写是Netty的一个非常典型的用法:例如,我认为Web服务器几乎都在做同样的事情。 Netty示例代码中的Web服务器/代理服务器可以显示如何执行此操作并且性能应该没问题。

我认为第一步是找出“慢”的位置。如果代码中没有慢,请查看tcp dump可能会有所帮助。