Hi everybody.
I have been testing nginx with mono to see if we can go this pass in
development on the company.
I have made 4 simple pages:
-Two static pages (html, one with 1k and another with 25k)
-Two dinamic pages (one just compile on mono, the second compile in mono
and go to SQL database, both made cache on mono)
More relevant data: Runing Suse 11.2 with nginx 0.84 and fastcgi with
mono 2.6.
Result
http://img412.imageshack.us/img412/3068/graph4x.png
I had some problems ad-hoc during the test that i didn’t manage to
resolve with the configurations in ngnix. I really need some help to try
identify the causes of the problems. Because the problems are random it
seems, and not being caused by stressing the server.
I identify 3 major problems with nginx:
- upstream sent unexpected FastCGI record: 3
- upstream sent unsupported FastCGI protocol version: 116
- upstream sent unsupported FastCGI protocol version: 60 while reading
upstream
One maybe be causing by mono (check mono log).
Nginx log:
2010/03/05 18:27:45 5249#0: *16076 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:45 5249#0: *16102 upstream sent unsupported FastCGI
protocol version: 116 while reading upstream, client: 127.0.0.1, server:
localhost, request: $
2010/03/05 18:27:45 5249#0: *16148 FastCGI sent in stderr: “Failed to
parse parameter data” while reading response header from upstream,
client: 127.0.0.1, server$
2010/03/05 18:27:45 5249#0: *16148 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:45 5249#0: *16169 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:45 5249#0: *16167 FastCGI sent in stderr: “Failed to
parse parameter data” while reading response header from upstream,
client: 127.0.0.1, server$
2010/03/05 18:27:45 5249#0: *16167 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:45 5249#0: *16186 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:47 5249#0: *16616 FastCGI sent in stderr: “Failed to
parse parameter data” while reading response header from upstream,
client: 127.0.0.1, server$
2010/03/05 18:27:47 5249#0: *16616 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:48 5249#0: *16895 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:49 5249#0: *17170 FastCGI sent in stderr: “Failed to
parse parameter data” while reading response header from upstream,
client: 127.0.0.1, server$
2010/03/05 18:27:49 5249#0: *17170 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:49 5249#0: *17206 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:49 5249#0: *17199 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:50 5249#0: *17403 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:50 5249#0: *17402 FastCGI sent in stderr: “Failed to
parse parameter data” while reading response header from upstream,
client: 127.0.0.1, server$
2010/03/05 18:27:50 5249#0: *17402 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:50 5249#0: *17044 recv() failed (104: Connection reset
by peer) while reading response header from upstream, client: 127.0.0.1,
server: localhost$
2010/03/05 18:27:50 5249#0: *16989 recv() failed (104: Connection reset
by peer) while reading response header from upstream, client: 127.0.0.1,
server: localhost$
2010/03/05 18:27:50 5249#0: *17037 recv() failed (104: Connection reset
by peer) while reading response header from upstream, client: 127.0.0.1,
server: localhost$
2010/03/05 18:27:52 5249#0: *18344 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:52 5249#0: *18343 FastCGI sent in stderr: “Failed to
parse parameter data” while reading response header from upstream,
client: 127.0.0.1, server$
2010/03/05 18:27:52 5249#0: *18343 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:53 5249#0: *18631 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:54 5249#0: *18728 FastCGI sent in stderr: “Failed to
parse parameter data” while reading response header from upstream,
client: 127.0.0.1, server$
2010/03/05 18:27:54 5249#0: *18728 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:54 5249#0: *18841 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:54 5249#0: *18844 upstream sent unsupported FastCGI
protocol version: 60 while reading upstream, client: 127.0.0.1, server:
localhost, request: "$
2010/03/05 18:27:54 5249#0: *18830 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:56 5249#0: *19307 upstream sent unsupported FastCGI
protocol version: 116 while reading upstream, client: 127.0.0.1, server:
localhost, request: $
2010/03/05 18:27:56 5249#0: *19621 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:57 5249#0: *19659 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:57 5249#0: *19661 upstream sent unsupported FastCGI
protocol version: 105 while reading upstream, client: 127.0.0.1, server:
localhost, request: $
2010/03/05 18:27:57 5249#0: *19478 recv() failed (104: Connection reset
by peer) while reading response header from upstream, client: 127.0.0.1,
server: localhost$
2010/03/05 18:27:57 5249#0: *19779 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:57 5249#0: *19932 FastCGI sent in stderr: “Failed to
parse parameter data” while reading response header from upstream,
client: 127.0.0.1, server$
2010/03/05 18:27:57 5249#0: *19932 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:27:59 5249#0: *20198 recv() failed (104: Connection reset
by peer) while reading response header from upstream, client: 127.0.0.1,
server: localhost$
2010/03/05 18:27:59 5249#0: *20460 FastCGI sent in stderr: “Failed to
parse parameter data” while reading response header from upstream,
client: 127.0.0.1, server$
2010/03/05 18:27:59 5249#0: *20460 recv() failed (104: Connection reset
by peer) while reading response header from upstream, client: 127.0.0.1,
server: localhost$
2010/03/05 18:27:59 5249#0: *20474 FastCGI sent in stderr: “Failed to
parse parameter data” while reading response header from upstream,
client: 127.0.0.1, server$
2010/03/05 18:27:59 5249#0: *20474 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:28:01 5249#0: *21050 upstream sent unsupported FastCGI
protocol version: 60 while reading upstream, client: 127.0.0.1, server:
localhost, request: "$
2010/03/05 18:28:02 5249#0: *21340 FastCGI sent in stderr: “Failed to
parse parameter data” while reading response header from upstream,
client: 127.0.0.1, server$
2010/03/05 18:28:02 5249#0: *21340 upstream sent unexpected FastCGI
record: 3 while reading response header from upstream, client:
127.0.0.1, server: localhost, r$
2010/03/05 18:28:02 5249#0: *20983 recv() failed (104: Connection reset
by peer) while reading response header from upstream, client: 127.0.0.1,
server: localhost$
2010/03/05 18:28:02 5249#0: *21399 upstream sent unsupported FastCGI
protocol version: 116 while reading upstream, client: 127.0.0.1, server:
localhost, request: $
Mono log:
Parameter name: s
[2010-03-05 18:27:45Z] Error Aborting request 1. Reason follows:
[2010-03-05 18:27:45Z] Error Failed to parse parameter data.
[2010-03-05 18:27:45Z] Error Failed to process connection. Reason:
Argument cannot be null.
Parameter name: s
[2010-03-05 18:27:45Z] Error Aborting request 1. Reason follows:
[2010-03-05 18:27:45Z] Error Failed to parse parameter data.
[2010-03-05 18:27:45Z] Error Failed to process connection. Reason:
Argument cannot be null.
Parameter name: s
[2010-03-05 18:27:47Z] Error Aborting request 1. Reason follows:
[2010-03-05 18:27:47Z] Error Failed to parse parameter data.
[2010-03-05 18:27:47Z] Error Failed to process connection. Reason:
Argument cannot be null.
Parameter name: s
[2010-03-05 18:27:48Z] Error Failed to process connection. Reason: 8
bytes expected.
Parameter name: record
[2010-03-05 18:27:48Z] Error Failed to process connection. Reason: 8
bytes expected.
Parameter name: record
[2010-03-05 18:27:48Z] Error Failed to process connection. Reason: 8
bytes expected.
Parameter name: record
[2010-03-05 18:27:49Z] Error Aborting request 1. Reason follows:
[2010-03-05 18:27:49Z] Error Failed to parse parameter data.
[2010-03-05 18:27:49Z] Error Failed to process connection. Reason:
Argument cannot be null.
Parameter name: s
[2010-03-05 18:27:50Z] Error Aborting request 1. Reason follows:
[2010-03-05 18:27:50Z] Error Failed to parse parameter data.
[2010-03-05 18:27:50Z] Error Failed to process connection. Reason:
Argument cannot be null.
Parameter name: s
[2010-03-05 18:27:52Z] Error Aborting request 1. Reason follows:
[2010-03-05 18:27:52Z] Error Failed to parse parameter data.
[2010-03-05 18:27:52Z] Error Failed to process connection. Reason:
Argument cannot be null.
Parameter name: s
[2010-03-05 18:27:54Z] Error Aborting request 1. Reason follows:
[2010-03-05 18:27:54Z] Error Failed to parse parameter data.
[2010-03-05 18:27:54Z] Error Failed to process connection. Reason:
Argument cannot be null.
Parameter name: s
[2010-03-05 18:27:56Z] Error Request 1 does not exist.
[2010-03-05 18:27:56Z] Error Terminating connection.
[2010-03-05 18:27:56Z] Error Failed to process connection. Reason:
Object reference not set to an instance of an object
[2010-03-05 18:27:57Z] Error Aborting request 1. Reason follows:
[2010-03-05 18:27:57Z] Error Failed to parse parameter data.
[2010-03-05 18:27:57Z] Error Failed to process connection. Reason:
Argument cannot be null.
Parameter name: s
[2010-03-05 18:27:58Z] Error Failed to process connection. Reason: 8
bytes expected.
Parameter name: record
[2010-03-05 18:27:59Z] Error Aborting request 1. Reason follows:
[2010-03-05 18:27:59Z] Error Failed to parse parameter data.
[2010-03-05 18:27:59Z] Error Failed to process connection. Reason:
Argument cannot be null.
Parameter name: s
[2010-03-05 18:27:59Z] Error Aborting request 1. Reason follows:
[2010-03-05 18:27:59Z] Error Failed to parse parameter data.
[2010-03-05 18:27:59Z] Error Failed to process connection. Reason:
Argument cannot be null.
Parameter name: s
[2010-03-05 18:28:01Z] Error Request 1 does not exist.
[2010-03-05 18:28:01Z] Error Terminating connection.
[2010-03-05 18:28:01Z] Error Failed to process connection. Reason:
Object reference not set to an instance of an object
[2010-03-05 18:28:02Z] Error Aborting request 1. Reason follows:
[2010-03-05 18:28:02Z] Error Failed to parse parameter data.
[2010-03-05 18:28:02Z] Error Failed to process connection. Reason:
Argument cannot be null.
Hope someone can point me out the right direction…
Regards,
Ribeiro
Posted at Nginx Forum: