#1 2017-11-16 06:50:49

megahertz
Member
Registered: 2017-11-16
Posts: 1

THttpServer, HTTP/1.0 and 5s delay

Hi.

It seems when THttpServer handles HTTP/1.0 requests there is ~5 seconds delay before sending response.

Test example: https://github.com/megahertz/mormot-http

With HTTP/1.1 the response time is less than 1ms:

$ curl -s -w "%{time_total}" -I http://127.0.0.1:8082
HTTP/1.1 404 Not Found
X-Powered-By: mORMot 1.18 synopse.info
Server: mORMot (Linux)
Content-Length: 0
Connection: Keep-Alive

0,000716

but with HTTP/1.0 it's greater than 5 seconds:

$ curl -s -w "%{time_total}" --http1.0 -I http://127.0.0.1:8082
HTTP/1.0 404 Not Found
X-Powered-By: mORMot 1.18 synopse.info
Server: mORMot (Linux)
Content-Length: 0

5,177207

The same delay when requesting with HTTP/1.1 and "Connection: close" header

$ curl -s -w "%{time_total}" -H "Connection: close" -I http://127.0.0.1:8082
HTTP/1.0 404 Not Found
X-Powered-By: mORMot 1.18 synopse.info
Server: mORMot (Linux)
Content-Length: 0

5,174978

I tried it on Linux/FPC 3.0.2, WinXp/FPC 3.0.2/Delphi 5 and Win10/Delphi 7 and it has the same result. But on Linux, the test app also prints to console "errno Recv()=11", as I understand, it's EAGAIN error.

Maybe I missed something?

Last edited by megahertz (2017-11-16 06:51:26)

Offline

Board footer

Powered by FluxBB