我已经使用 HDFS API 构建了一个存储系统。我现在正在对系统进行一些性能测试。我通过SIEGE创建了大量并发文件检索请求(例如:) siege -c 500 -r 1 "http://bucket1.s3.bigdatapro.org/1.jpg"
。但是,我在datanodes上遇到了以下问题:
013-06-17 21:08:56,987 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: DatanodeRegistration(146.169.35.109:50010, storageID=DS-1983611132-146.169.35.109-50010-1350751070203, infoPort=50075, ipcPort=50020):DataXceiver
java.io.IOException: xceiverCount 4097 exceeds the limit of concurrent xcievers 4096
at org.apache.hadoop.hdfs.server.datanode.DataXceiver.run(DataXceiver.java:156)
我已经设置了这个:
<property>
<name>dfs.datanode.max.xcievers</name>
<value>4096</value>
</property>
我应该将其增加到更高的值吗?将其设置为非常高的值是否有任何副作用?像10000000?我还将最大打开文件增加到 50000。我还遗漏了什么吗?还是我做错了什么?
谢谢