需求:在内网中存在1000-2000台机器想服务器发送大小为100k-2M左右的文件,发送频率为大概每台机器10s-1m发送一次,持续120分钟,允许有文件少量上传失败,但是上传失败的文件可以重新上传,最后的结果一定是要所有的文件全部上传到服务器。
服务器配置:
内存:16GB(可升)
CPU:Intel(R) Xeon(R) CPU E3-1220 v5 @3.00GHz 3.00 GHz(可升)
磁盘:可升至M2
系统:不限制,最好win server
请问什么样的技术方案能实现这种需求?
我试过的方案:
在服务器上提供http的API接口,客户端调用接口上传文件,但是在并发太高中,会导致大量的文件上传失败。
想知道这种方案的瓶颈是在哪里,为什么别人的文件服务器(比如阿里云的oss)可以使用这种方式高并发的上传文件,他们是如何实现的,是和硬件的关系比较大吗?目前考虑的方案:
使用TCP的方式传输文件,对网络编程不是太熟悉,这种方式的瓶颈又在哪里?