抱歉,如果问题很简单,我是 Web 开发和自托管服务器的新手。
我们有一个自托管网站,它应该有一个按钮来下载一个大的 zip 文件(1 GB)。为此,我们在index.html
文件中有一个简单的解决方案:
<form action="path/to/file.zip" style="display: inline;">
<button type="submit" class="btn btn-light">DOWNLOAD</button>
</form>
这通常工作得很好。问题是,每当多个访问者尝试同时下载文件时,服务器就会耗尽内存并且网站崩溃。这是因为每次有人单击下载按钮时,文件似乎在整个下载过程中加载到 RAM 中。当多个访问者单击“下载”按钮时,文件会多次加载到 RAM 中。作为附加信息,该网站是用 python+Flask 构建的,服务器有 12 GB 的 RAM。
我在这个答案(如何阻止 Apache 使我的整个服务器崩溃?)中看到了这一点,他们建议“为长时间运行的进程减轻 Apache 的负载”,但我不确定如何实现这一点。您可以建议解决此问题的任何解决方案吗?
非常感谢您提前。