Pregunta

Tengo una instalación que sirve 8 sitios diferentes OSQA (una aplicación Python / Django y q). Los sitios son todos en el desarrollo, que recibe un tráfico mínimo. El servidor es un servidor privado virtual con 512 MB de RAM.

Apache está sirviendo solamente páginas dinámicas con mod_wsgi detrás de Nginx. No puedo dejar de Apache consumir más y más memoria con cada solicitud hasta que los inductores del servidor.

I experimentado con los parámetros de configuración sin mucha suerte para reducir al mínimo el consumo de memoria. Con los siguientes parámetros mpm_prefork en apache2.conf:

StartServers          2
MinSpareServers       1
MaxSpareServers       4
MaxClients            4
MaxRequestsPerChild 100

2 apache procesos comienzan con 4 MB y después de la primera solicitud hay 4 procesos con cada uno cerca de 50 mb y con cada nueva petición esos 4 procesos suben de manera constante hasta cerca de 200 MB cada uno.

Siento que hay algo malo pasa. Cualquier sugerencia, muy apreciados.

¿Fue útil?

Solución

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 contra esta con 10.000 accesos concurrentes y todavía estaba de pie.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top