Javascript 为什么有人会关掉Nagle';s算法?

Javascript 为什么有人会关掉Nagle';s算法?,javascript,node.js,tcp,redis,Javascript,Node.js,Tcp,Redis,从节点: 套接字节点延迟:默认为true。是否在上调用setNoDelay() TCP流,它禁用底层服务器上的Nagle算法 插座将此选项设置为false可能会导致额外的错误 以牺牲更多延迟为代价的吞吐量。大多数应用程序都需要 这是真的 为什么我要关闭Nagle算法?当您担心延迟时,您应该关闭Nagle算法。我对该算法的理解是,它会延迟发送数据,直到有合理的发送量。这反过来又减少了流的协议开销,因为在单个分组(即,使用单个报头)中发送更多数据 关闭Nagle算法后,其思想是通过协议栈立即发送数据

从节点:

套接字节点延迟:默认为true。是否在上调用setNoDelay() TCP流,它禁用底层服务器上的Nagle算法 插座将此选项设置为false可能会导致额外的错误 以牺牲更多延迟为代价的吞吐量。大多数应用程序都需要 这是真的


为什么我要关闭Nagle算法?

当您担心延迟时,您应该关闭Nagle算法。我对该算法的理解是,它会延迟发送数据,直到有合理的发送量。这反过来又减少了流的协议开销,因为在单个分组(即,使用单个报头)中发送更多数据

关闭Nagle算法后,其思想是通过协议栈立即发送数据

它是在网络资源更加有限的时候设计的,因此减少开销比方便的交付更重要。然而,如今,随着互连速度的提高和对低延迟的要求越来越高,它变得越来越不重要了。(想想视频流!)