2 dasuiyuan dasuiyuan 于 2015.07.13 16:41 提问

关于Hadoop WebHDFS 下载文件速度慢的问题 20C

目前正在windows+.net下开发一个Hadoop HDFS读写文件的小测试程序。用的WebHDFS
http接口。上传文件速度比较快,但是下载非常慢。跟踪代码发现主要是在读取网络流时太慢:
Stream respStream = wrp.GetResponseStream();
Stream fileStream = File.Create(localFile);
int bufferSize = 1024 * 1024;
int byteNum;
byte[] downloadByte = new byte[bufferSize];
while (true)
{
byteNum = repStream.Read(downloadByte, 0, bufferSize);
if (byteNum == 0)
{
break;
}
fileStream.Write(downloadByte, 0, byteNum);
}
我虽然设置了bufferSize但是每次读取时最多不超过8192字节。我想请问一下怎样才能提高读取的字节数?

2个回答

caozhy
caozhy   Ds   Rxr 2015.07.13 23:35
dasuiyuan
dasuiyuan 我目前上传速度是下载速度的3倍,不明白为什么。
2 年多之前 回复
oyljerry
oyljerry   Ds   Rxr 2015.07.13 23:32

既然最多不超过8192,那么你bufferSize就不要开这么大,浪费空间。这样可以提高一些。

dasuiyuan
dasuiyuan 我想知道为什么是8kb,bufferSize只是测试用随便设的。
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片