OSQA apache 内存占用

发布于 2024-09-30 04:03:11 字数 540 浏览 12 评论 0原文

我有一个 OSQA(python / django q&a 应用程序)安装,为 8 个不同的站点提供服务。这些网站都在开发中,流量很少。该服务器是具有 512 MB RAM 的虚拟专用服务器。

Apache 仅在 Nginx 后面使用 mod_wsgi 提供动态页面。我无法阻止 Apache 每个请求消耗越来越多的内存,直到服务器崩溃。

我尝试了配置参数,但没有成功地最大限度地减少内存占用。使用 apache2.conf 中的以下 mpm_prefork 参数:

StartServers          2
MinSpareServers       1
MaxSpareServers       4
MaxClients            4
MaxRequestsPerChild 100

2 个 apache 进程开始使用 4 mb,在第一个请求之后,有 4 个进程,每个进程接近 50 mb,并且随着每个新请求,这 4 个进程稳步攀升至每个进程接近 200 mb。

我感觉有什么不对劲的事情发生了。非常感谢任何建议。

I have an OSQA (python / django q&a application) installation serving 8 different sites. The sites are all in development, receiving minimal traffic. The server is a virtual private server with 512 mb of ram.

Apache is only serving dynamic pages with mod_wsgi behind Nginx. I can't stop Apache consuming more and more memory with each request until the server chokes.

I experimented with the configuration parameters without much luck to minimize the memory footprint. With the following mpm_prefork parameters in apache2.conf:

StartServers          2
MinSpareServers       1
MaxSpareServers       4
MaxClients            4
MaxRequestsPerChild 100

2 apache processes start using 4 mb and after the first request there are 4 processes with each nearly 50 mb and with each new request those 4 processes climb steadily up to nearly 200 mb each.

I feel like there is something wrong going on. Any suggestions are greatly appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

为你拒绝所有暧昧 2024-10-07 04:03:11
KeepAlive Off
MaxSpareThreads 3
MinSpareThreads 1
ServerLimit 3
SetEnvIf X-Forwarded-SSL on HTTPS=1
ThreadsPerChild 2

WSGIDaemonProcess osqaWSGI processes=2 python-path=/web/osqa_server:/web/osqa_server/lib/python2.6 threads=1 maximum-requests=550
WSGIProcessGroup osqaWSGI

运行 httperf 来对抗它,并发点击数为 10,000,结果仍然存在。

KeepAlive Off
MaxSpareThreads 3
MinSpareThreads 1
ServerLimit 3
SetEnvIf X-Forwarded-SSL on HTTPS=1
ThreadsPerChild 2

WSGIDaemonProcess osqaWSGI processes=2 python-path=/web/osqa_server:/web/osqa_server/lib/python2.6 threads=1 maximum-requests=550
WSGIProcessGroup osqaWSGI

Ran httperf against this with 10,000 concurrent hits and it was still standing.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文