为什么应该使用 max-request 来避免内存泄漏?

변경섭*_*변경섭 3 uwsgi

为什么应该使用 max-request 来避免内存泄漏?

我对我的应用程序进行了压力测试,并且发生了内存泄漏,并且设置了最大请求,因此内存泄漏消失了。这是必需的选项吗?还是我的错?

小智 5

在应用程序的生命周期中,您创建对象、读取文件并执行许多其他分配内存的工作。有时垃圾收集器无法释放内存(您可以在此处此处找到一些解释,也很有趣),因此会出现内存泄漏。它的作用是max-requests,它只是告诉 uWSGI 在指定数量的托管请求之后重新加载工作线程,从而释放它们分配的内存。

另外,为了限制工作人员使用的内存,您可以使用reload-on-asreload-on-rss选项。