0

设置是:

  1. Windows XP 虚拟机(暂时坚持这个 - 我们在 Intranet 上)
  2. 阿帕奇 2,
  3. mod_wsgi
  4. django 1.4
  5. 虚拟环境
  6. 我们最多只有两个用户同时使用这个应用程序

一切正常,但浏览器的请求和服务器发回的响应之间存在明显的延迟(10-20 秒)。

如果我用 Django 开发服务器(我不想在生产中这样做)替换 Apache2 Web 服务器,则应用程序的响应速度非常快。所以我的假设是问题出在 Apache2 配置或 mod_wsgi 配置上。

我不是 Apache 专家,我花了数小时寻找正确的设置来配置 Apache2 Web 服务器,但没有找到任何可以改善响应的东西。

任何帮助将不胜感激。

以下是我更改或添加到 httpd.conf 的设置:

# ThreadsPerChild: constant number of worker threads in the server process
ThreadsPerChild 10
# Changed MaxRequestsPerChild 0 to 1 for Django
MaxRequestsPerChild  1
# For Django KeepAlive should be OFF
KeepAlive Off

WSGIApplicationGroup %{GLOBAL}
#######################################
WSGIScriptAlias / "C:/virtual_env/sitar_env2/cissimp/cissimp/wsgi.py"
WSGIPythonPath C:/virtual_env/sitar_env2/Lib/site-packages;C:/virtual_env/sitar_env2/cissimp
Alias /static "C:/virtual_env/sitar_env2/cissimp/cissimp/static"
<Directory "C:/virtual_env/sitar_env2/cissimp/cissimp">
<Files wsgi.py>
Order allow,deny
Allow from all
</Files>
</Directory>
##########################################
4

1 回答 1

1

不要设置:

MaxRequestsPerChild  1

您有效地在每个请求上重新启动 Apache,这意味着必须在每个请求上加载整个 Django 应用程序。你不应该那样做。

于 2013-04-08T21:49:44.273 回答