如何将上传器服务器的速率限制为内存效率

时间:2016-05-21 15:22:08

标签: c++ memory-management server out-of-memory scalability

我有一个自定义的多线程http服务器(在c ++中):

1)接受不同视频流的媒体ts段的POSTS 2)将一堆它们归档成一个zip文件(在磁盘上)
3)并将zip文件上传到预先配置的源/内容服务器(比如将100个段存档到zip文件后)

问题是每个zip文件大约100 MB并且有大量的客户端POST(每秒150个),上传这些zip文件会压倒vsize / rss和崩溃。(因为上传需要将zip文件读入内存)
是否有内存识别/内存有效的方法来确保上传线程可以实现最大吞吐量而不会压倒内存? 某种动态速率限制可能会导致太多客户端没有攻击vsize?

平台是Linux Ubuntu 14.04

1 个答案:

答案 0 :(得分:0)

回答我自己的问题:这些策略对我有用: 1.限制并发上传次数 2.以块的形式读取zip文件,并通过打开的http连接上传