Losing 'post' requests sent to Pylons paster server

Posted by Philip McDermott on Stack Overflow See other posts from Stack Overflow or by Philip McDermott
Published on 2010-03-30T13:43:40Z Indexed on 2010/03/31 11:53 UTC
Read the original article Hit count: 433

Filed under:
|
|
|
|

I'm sending post requests to a Pylons server (served by paster serve), and if I send them with any frequency many don't arrive at the server. One at a time is ok, but if I fire off a few (or more) within seconds, only a small number get dealt with. If I send with no post data, or with get, it works fine, but putting just one character of data in the post fields causes massive losses.

For example, sending 200, 2 will come back. Sending 100 more slowly, 10 will come back.

I'm making the requests form inside a Qt application. Tis will work ok (no data):

QString postFields = "" QNetworkRequest request(QUrl("http://server.com/endpoint")); QNetworkReply *reply = networkAccessManager->post(request, postFields.toAscii());

And this will result in only a fraction of the requests being dealt with:

QString postFields = "" QNetworkRequest request(QUrl("http://server.com/endpoint")); QNetworkReply *reply = networkAccessManager->post(request, postFields.toAscii());

I've played around with turning on use_threadpool, and other options (threadpool_workers, threadpool_max_requests = 300), of which some combinations can alter the results slightly (best case 10 responses in 200).

If I send similar requests to other (non paster) servers, the replies come back ok, so I'm almost certain its'a paster serve config issue.

Any help or advice greatly appreciated.

Thanks

Philip

© Stack Overflow or respective owner

Related posts about python

Related posts about pylons