1
Netty是否可以创建一个工作线程来完成一组套接字的所有发送?目前看来,netty会将出站消息发布到队列中,并尝试唤醒选择器,然后将选择器复制到未使用的缓冲区并发送。这需要时间。是否可以直接从不同的线程发送?Netty需要发送与select()相同的线程,以延迟发送
Netty是否可以创建一个工作线程来完成一组套接字的所有发送?目前看来,netty会将出站消息发布到队列中,并尝试唤醒选择器,然后将选择器复制到未使用的缓冲区并发送。这需要时间。是否可以直接从不同的线程发送?Netty需要发送与select()相同的线程,以延迟发送
这是不可能的。 Netty不知道用户将从哪个线程调用write()。因此,它需要一个写请求队列和一个专用循环来执行写操作。否则,根据用户如何编写他/她的应用程序,应用程序将遭受争用。在负载下,拥有专用的I/O环路并运行带有流水线的协议看起来会产生更高的吞吐量。