La puerta de enlace 502 no es correcta después de una pequeña prueba de carga en fastcgi-mono-server a través de nginx y ServiceStack

Estoy tratando de ejecutar una API de servicio web con ServiceStack bajo nginx y fastcgi-mono-server.

El servidor se inicia bien y la API está en funcionamiento. Puedo ver los tiempos de respuesta en el navegador a través del generador de perfiles de ServiceStack y se ejecutan en menos de 10 ms.

Pero tan pronto como hago una pequeña prueba de carga con "siege" (solo 500 solicitudes con 10 conexiones), comienzo a recibir 502 Bad Gateway. Y para recuperar, tengo que reiniciar el fastcgi-mono-server.

El servidor nginx está bien. El fastcgi-mono-server es el que deja de responder después de esta pequeña carga.

He intentado usar los sockets tcp y unix (soy consciente de un problema de permisos con el socket de unix, pero ya lo solucioné).

Aquí están mis configuraciones:

server {
    listen       80;
    listen       local-api.acme.com:80;
    server_name  local-api.acme.com;

    location / {
        root   /Users/admin/dev/acme/Acme.Api/;
        index index.html index.htm default.aspx Default.aspx;
        fastcgi_index Default.aspx;
        fastcgi_pass unix:/tmp/fastcgi.socket;
        include /usr/local/etc/nginx/fastcgi_params;            
    }
}

Para iniciar el fastcgi-mono-server:

sudo fastcgi-mono-server4 /applications=local-api.acme.com:/:/Users/admin/dev/acme/Acme.Api/ /socket=unix:/tmp/fastcgi.socket /multiplex=True /verbose=True /printlog=True

EDIT: olvidé mencionar un detalle importante: estoy ejecutando esto en Mac OS X.

También probé toda la configuración de servidor web posible para Mono: aplicación de consola, apache mod_mono, nginx fast_cgi y proxy_pass. Todos presentaron el mismo problema de fallar después de algunas solicitudes bajo Mono 3.2.3 + Mac OS X.

Pude probar la misma configuración en una máquina Linux y no tuve ningún problema allí.

Así que parece que es un problema Mono / ASP.NET cuando se ejecuta en Mac OS X.

Respuestas a la pregunta(1)

Su respuesta a la pregunta