FTP 大文件传输问题 解决
问题描述
将附件上传至FTP服务器,但是当附件过大,其大小为几百兆或1-2G时,会出现上传失败的现象
FTP上传原理解析
- 这里我们使用的是.Net的FtpWebRequest 创建FtpClient 进行附件上传
- 基本流程:文件上传或下载都是先将文件流拿到-->将文件流读入缓存-->程序从缓存中读取所需内容写入文件
- 在流读取到缓存区时可以setBufferSize 通常是1024 或是1024的倍数,默认是1024(这对于小文件的传输是足够了的)
问题查找
当前程序的bufferSize设置是2048 这相对于我们所需要传输的大文件来说有些小了
解决
将bufferSize设置为1024 * 1024【如果带宽容许 这里可以设置为1024* 1024 * 10 这将更快】