不Nagle算法需要禁用客户端呢?如果是这种情况,我还没有找到一种方法来通过JavaScript单独禁用Nagle的算法。禁用Nagle算法的客户端/ JavaScript的
我试图跨越的WebSocket流数据,从托管在Raspbian OS PHP的CLI服务器(也托管在Windows 7和Ubuntu有相同的结果)。此服务器已成功创建套接字并接受多个连接,并设置了TCP_NODELAY标志(仅用socket_get_option进行验证)。
$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)
socket_set_option($sock, SOL_SOCKET, TCP_NODELAY, 1);
在大多数平台上,无论设置了这个TCP_NODELAY标志,数据都会流式传输而不会聚集。然而,在Windows 7的Chrome和Firefox的数据块到达(有告密者0.2秒的延迟)。在Windows 8中,Linux中,iOS和Windows 7的IE 11:我没有看到这个问题在所有。
http://www.13willows.com/hovelme/script/serverControl.php 下面是测试网站,点击“连接”,然后单击“查看游戏”,你应该看到当前分组稳步递增,从1到20,每50ms。但是,在某些客户端,每200毫秒一次跳转4次。
任何想法得到这个停下来?将使用node.js/socket.io修复这样的问题,并仍然允许我从用户的浏览器运行代码?