libmicrohttpd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [libmicrohttpd] Problem with Keep-Alive and MHD_OPTION_CONNECTION_TI


From: Evgeny Grin
Subject: Re: [libmicrohttpd] Problem with Keep-Alive and MHD_OPTION_CONNECTION_TIMEOUT in MHD_USE_THREAD_PER_CONNECTION mode
Date: Tue, 08 Dec 2015 15:05:57 +0300

 
07.12.2015, 22:58, "silvioprog" <address@hidden>:
Hello, I have good news in the test 2, however in test 3 ...
 
@Evg, do I need to change the `FD_SETSIZE` and the MHD source before compiling or in the `CMakeLists.txt` of my example?
Define FD_SETSIZE to some large value (real limit is about 32k) before including any headers. You can define it in command line parameters.
Or get latest SVN - how MHD really redefine FD_SETSIZE with WinSock (old code for redefinition was non-working).
 
 
But, make this small change in your JMeter config:
 
https://dl.dropboxusercontent.com/u/135304375/snip1.png (I can send a new jmx file if you prefer)
 
and in the MHD example:
 
  MHD_OPTION_CONNECTION_LIMIT, (unsigned int) 16000 * 2,
 
1,84% erros. And a lot of: `Failed to create a thread: Not enough space`. OK, so I disabled the "thread per connection":
Seems that you are using 32-bit version which limit number of threads because of lack of address space.
 
 
MHD_start_daemon(MHD_USE_SELECT_INTERNALLY | MHD_USE_DEBUG, PORT, NULL, NULL,
  &answer_to_connection, NULL,
  MHD_OPTION_CONNECTION_TIMEOUT, (unsigned int) 240,
  MHD_OPTION_CONNECTION_LIMIT, (unsigned int) 16000 * 2,
  MHD_OPTION_END);
 
Samples: 27255.
Error: 99,61%. LOL
 
And it locks the last requests.
 
Sorry for my ignorance, but MHD_USE_SELECT_INTERNALLY should be the more fast MHD option, then or I did something wrong in my test, or this MHD option has a small bug on Windows. :-/
This is an expected behavior with FD_SETSIZE equals 64 and 1000 keep-alive clients. First 62 clients occupied all handled by select() connections and the rest of clients are failed. If you change connection to "close", number of errors will be significantly lower.
 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]