主要修改了server端的tcpnodelay为false,就解决这个问题了。
tcpnodelay为false时的tcpdump为(有40ms的延迟)
16:17:00.576582 IP linux-idy0.48538 > linux-idy0.60020: P 5434:5643(209) ack 247472 win 387 <nop,nop,timestamp 567208394 567208393>
16:17:00.576869 IP linux-idy0.60020 > linux-idy0.48538: P 247472:255664(8192) ack 5643 win 6149 <nop,nop,timestamp 567208394 567208394>
16:17:00.616084 IP linux-idy0.48538 > linux-idy0.60020: . ack 255664 win 387 <nop,nop,timestamp 567208404 567208394>
16:17:00.616105 IP linux-idy0.60020 > linux-idy0.48538: P 255664:256941(1277) ack 5643 win 6149 <nop,nop,timestamp 567208404 567208404>
16:17:00.616199 IP linux-idy0.48538 > linux-idy0.60020: . ack 256941 win 387 <nop,nop,timestamp 567208404 567208404>
tcpnodelay为true时的tcpdump为
11:18:05.513811 IP linux-idy0.12741 > linux-idy0.60020: P 31350:31559(209) ack 1420351 win 2314 <nop,nop,timestamp 562724628 562724627>
11:18:05.514037 IP linux-idy0.60020 > linux-idy0.12741: P 1420351:1428543(8192) ack 31559 win 6145 <nop,nop,timestamp 562724628 562724628>
11:18:05.514067 IP linux-idy0.60020 > linux-idy0.12741: P 1428543:1429820(1277) ack 31559 win 6145 <nop,nop,timestamp 562724628 562724628>
11:18:05.514137 IP linux-idy0.12741 > linux-idy0.60020: . ack 1429820 win 2303 <nop,nop,timestamp 562724628 562724628>
连接别的hbase的server时的tcpdump为(tcpnodelay为false)
11:28:46.280278 IP linux-idy0.60201 > linux-kl9e.60020: P 28006:28215(209) ack 1268847 win 1437 <nop,nop,timestamp 562884820 562802550>
11:28:46.280634 IP linux-kl9e.60020 > linux-idy0.60201: P 1268847:1277039(8192) ack 28215 win 3077 <nop,nop,timestamp 562802551 562884820>
11:28:46.280647 IP linux-idy0.60201 > linux-kl9e.60020: . ack 1277039 win 1437 <nop,nop,timestamp 562884820 562802551>
11:28:46.280740 IP linux-kl9e.60020 > linux-idy0.60201: P 1277039:1278316(1277) ack 28215 win 3077 <nop,nop,timestamp 562802551 562884820>
可以看出当使用本机的loopback时,有ack延迟的问题。但通过eth0连接别的机子却没有这个问题,比较费解。
使用了ethtool -K lo gro on/off开关合并ACK,也没有用。
参考:
http://www.iteye.com/topic/1110883
http://blog.csdn.net/historyasamirror/article/details/6423235
http://blog.csdn.net/wjtxt/article/details/6606022
http://www.cnblogs.com/yxfqust/archive/2006/07/28/461836.html
http://blog.163.com/xychenbaihu@yeah/blog/static/132229655201231214038740/
可能是因为lo和eth0的MT值不同而引起的,参考
相关推荐
当前状态:完全通过 HBase 0.94 和 0.94.16Java hbase-client支持 HBase 服务器的版本[√] 0.94.x[√] 0.94.0[√] 0.94.160.95.x0.96.x安装$ npm install hbase-client使用 CRUD:通过 zookeeper 创建 HBase ...
Hadoop和HBase的安装、部署和配置
赠送jar包:hbase-client-1.4.3.jar; 赠送原API文档:hbase-client-1.4.3-javadoc.jar; 赠送源代码:hbase-client-1.4.3-sources.jar; 赠送Maven依赖信息文件:hbase-client-1.4.3.pom; 包含翻译后的API文档:...
hbase-client-2.1.0-cdh6.3.0.jar
赠送jar包:hbase-client-1.1.2.jar; 赠送原API文档:hbase-client-1.1.2-javadoc.jar; 赠送源代码:hbase-client-1.1.2-sources.jar; 赠送Maven依赖信息文件:hbase-client-1.1.2.pom; 包含翻译后的API文档:...
Hadoop、HBase、Zookeeper安装部署
hbase系统搭建与部署,挺有挑战的,看看吧。试试吧
hbase-sdk是基于hbase-client和hbase-thrift的原生API封装的一款轻量级的HBase ORM框架。 针对HBase各版本API(1.x~2.x)间的差异,在其上剥离出了一层统一的抽象。并提供了以类SQL的方式来读写HBase表中的数据。对...
注意:zookeeper3.4.13和hbase2.2.2都是采用docker-compose方式部署 原文链接:https://blog.csdn.net/m0_37814112/article/details/118794130 说明:使用外部zookeeper之hbase2.2.2一键部署工具,支持部署、启动、...
Hadoop(Hbase)的安装部署与配置实验
注意:zookeeper3.4.13和hbase2.3.5都是采用docker-compose方式部署 原文链接:https://blog.csdn.net/m0_37814112/article/details/120915194 说明:使用外部zookeeper3.4.13之hbase2.3.5一键部署工具,支持部署、...
HBaseClient HBase客户端数据管理软件 概要说明 类似PL/SQL,是一个HBase数据库的客户端数据管理软件。是免费开源的软件。 基于XJava,使用xml配置文件绘制可视化界面。 可视化界面操作 表 表的定义、编辑、删除; ...
HBase_Client_Api_Guide
赠送jar包:hbase-client-1.1.2.jar; 赠送原API文档:hbase-client-1.1.2-javadoc.jar; 赠送源代码:hbase-client-1.1.2-sources.jar; 包含翻译后的API文档:hbase-client-1.1.2-javadoc-API文档-中文(简体)-...
3.集群能正常运行的条件是集群可节点宕机数应保证有超过集群机器总数一半的机器在运行,因此从经济和实用性来说,集群的节点一般是奇数个,本文部署4台机器,其容灾能力与部署3台机器一致,即只能宕机1台
赠送jar包:hbase-server-1.4.3.jar; 赠送原API文档:hbase-server-1.4.3-javadoc.jar; 赠送源代码:hbase-server-1.4.3-sources.jar; 赠送Maven依赖信息文件:hbase-server-1.4.3.pom; 包含翻译后的API文档:...
hbase部署使用,hbase部署使用hbase部署使用hbase部署使用hbase部署使用
解决hbase client在windows环境下报Could not initialize class org.fusesource.jansi.internal.Kernel32的问题,把jar包放入hbase client的lib包下,重新运行hbase.cmd shell即可
NULL 博文链接:https://hera.iteye.com/blog/757126
hbase-0.98.9分布式部署