Netty需要与select()延迟发送的相同线程发送
-
25-10-2019 - |
题
Netty是否有可能创建一个为一组插座发送的工作线程吗?看来,当前,Netty将出站消息发布到队列中,并试图唤醒选择器,然后将数据复制到未使用的缓冲区中并将其发送。这需要时间。是否可以直接从其他线程发送?
解决方案
这不可能。 Netty不知道用户将从哪个线程调用Write()。因此,它需要写入请求队列和专用循环来执行写入。否则,该应用程序将根据用户撰写其应用程序的方式而遭受争议。在负载下,具有专用的I/O循环并运行带管道的协议似乎会产生更高的吞吐量。
不隶属于 StackOverflow