Ok i didn't realize the msleep to be coming from haproxy itself the 'core.' should have made me think twice before sending that mail. Thanks for clearing it up, of course still actual results from Bjoern will be interesting to hear a well :).

Thierry schreef op 18-6-2015 om 21:12:
On Thu, 18 Jun 2015 20:27:07 +0200
PiBa-NL <piba.nl....@gmail.com> wrote:

Thing to check, what happens to concurrent connection requests?
My guess is with 10 concurrent requests it might take up to 20
seconds(worst case for 10 connections) for some requests instead of the
expected max 2..
Note that we don't use the sleep from the standard Lua API, but the
sleep from the HAProxy Lua API.

The Lua sleep is not a real sleep. It have the behavior of a sleep only
in the Lua code. Is real behavior, is to block the request, set a task
timeour and give back the hand to the HAProxy scheduler.

So, during the sleep, HAProxy is not blocked an continue to process
other connections. Same bahavior for the TCP access; it seeme to be
blocked in the lua code, but HAProxy is not blocked.

Thierry FOURNIER schreef op 18-6-2015 om 19:35:

You can do this with Lua. Its very easy.

First, you create a lua file containing the following code. The name of
this Lua file is "file.lua".

     function delay_request(txn)
        core.msleep(1000 + txn.f.rand(1000))

Second, you configura haproxy for loading ths file. In the global

     lua-load file.lua

In your frontend (or backend)

     http-request lua delay_request if { ... your condition ... }

Note that I didn't test this configuration, I'm just giving the main
lines. Please share your results, it's maybe interesting for everyone.


On Thu, 18 Jun 2015 17:55:31 +0200
"bjun...@gmail.com" <bjun...@gmail.com> wrote:


i want to delay specific requests and i want to have a random delay
for every request (for example in a range from 1000ms - 2000ms)

As an ugly hack, you can use the following (with a static value):

   tcp-request inspect-delay 2000ms
   tcp-request content accept if WAIT_END

I think i can achieve random delays with Lua. Does anyone have a
example how this can be realized with Lua ?

Thanks in advance !


Reply via email to