HTTP上传:
客户端 上传数据 到服务器。
上传速度决定于: 1)客户端, 2)服务器, 3)路由
1)客户端:
1.1. 是否保持长连接, 对于多个小文件的上传, 保持同一个连接非常有效;
1.2. 连接数,过多或过少都不好;
1.3. 发送数据的粒度大小;
1.4. 读文件的效率, 最好异步读文件, 先将数据缓存好, 待发送数据时,就省去了读文件的时间;
1.5. 是否压缩, 如果数据可以压缩, 压缩的话,将会减少数据发送量,进一步提高数据发送效率, 但是对于JPG等无法压缩的数据,就反而起到反作用, 可以作一个简短的判断,比如读取前200字节, 根据压缩比判断;
1.6. 是否加密, 如果数据加密了, 会比较耗时, 可以采用比较简单的加密方法;
2)服务器
多线程、 非阻塞。。。
3)路由
减少路由,通过搭建代理等方法。。。