最近做一个视频采集系统,CLIENT端需要把上G的资料往server端发(最大的20个G都有),CLIENT端网络环境复杂 VPN拨入比较常见,要求用单线程传输,实现断点续传。做出来 实际测了下,发现下的文件经常MD5值对不上。 导致文件打开出错 
急求这方面的朋友给个完美解决方案。 分不够再加。  直到解决为止。

解决方案 »

  1.   

    客户端
    把文件按每M分块为n个小文件(1M,最后1个文件可能小于1M,假设文件名为:DATAi.bin),每块生成一个md5(DATAi.MD5)
    先把所有的md5文件传过去
    然后逐块上传
    传完了,定时检测服务端是不是缺少某个bin文件,缺少则重新传服务端
    根据已有的DATAi.bin生成md5,与DATAi.md5比较,一样则删掉DATAi.md5文件,否则就删除DATAi.bin
    目录里没有*.md5文件了,才开始合并所有DATAi.bin为一个文件