我想在我的VPS上运行一些Django站点,Nginx充当它的前端.我一直遇到mod_python和Apache的一些问题,只要流量开始上升,网站就会开始出错,因为它只是为每个请求使用了这么多的RAM.所以我做了一些研究,发现mod_python对于小型VPS来说并不是我最好的选择.
我的设置有Nginx提供静态文件(javascript,css,图像),并使用memcached通过缓存Apache“制作的页面来大幅减少对Apache后端的请求,但这仍然运行mod_python,昨天我仍有一些人说他们无缘无故地得到了500个错误.
我现在要做的是使用FastCGI来运行Django,我已经读过它可以用更少的RAM处理更高的流量,但是它的配置对我来说有点奇怪;我根本没有关于某些条款的专家.我正在看的主要内容是这些选项:
maxspare=NUMBER max number of spare processes / threads
minspare=NUMBER min number of spare processes / threads
maxchildren=NUMBER hard limit number of processes / threads
method=IMPL prefork or threaded (default prefork)
任何帮助确定我应该设置的内容将不胜感激.我还想知道它提到的这些进程是如何/是否与Nginx工作进程有关.该服务器拥有4个网站,这些网站通常每天处理几千次点击,但它们都会在大部分流量的同时被攻击,而且问题就是在问题开始时.
Deploying Django with Apache and
mod_wsgi is the recommended way to get
Django into production.mod_wsgi is an Apache module which can
be used to host any Python application
which supports the Python WSGI
interface,including Django. Django
will work with any version of Apache
which supports mod_wsgi.
https://docs.djangoproject.com/en/dev/howto/deployment/wsgi/modwsgi/