thread_pool_max

Viktor Villafuerte viktor.villafuerte at optusnet.com.au
Fri Dec 11 05:19:40 CET 2015


Ladies, gents

In the Varnish on-line docs (section Tuning) there's a paragraph that
states:

"We rarely recommend running with more than 5000 threads. If you
seem to need more than 5000 threads, it’s very likely that there is
something not quite right about your setup.."


I'm in a situtation where many many tens of thousands of keep-alive
sessions can be established. Since every user needs two connections and
I use 2 pools of 5000 threads, the max I can use is 10000 threads which
does not sound enough to me.

This is related to HLS streaming (TV channels) and I've currently
increased thread_pool_max to 15000. This possibly can/will be not
enough but better than 5000. The server that runs this is a beast with
massive amount of memory and large number of CPUs capable of running
of up to 35Gbps of traffic (4 x 10Gbps interfaces) with outlook of
adding 2 more 10Gbps interfaces. So I do not face any underlying
resource limitation (if that's part of reasoning to keep the number of
threads at ~10k)

>From my observations of current behaviour a connection does not mean a
corresponding thread as I observe about 4:1 ratio of connections vs
threads.

I'd like to ask why the recommended number of threads in a pool is 5000?
What would be the limit there and why? I assume this would be Varnish
limit and may be serious problem if it cannot be overcome.

Currently there are not that many users (cca 10000) but I'd like to find
out about any such limitation before I actually hit it..


Please let me know or point me to any documentation/explanation of
threds and threads pools I may have not found.


thanks


-- 
Regards

Viktor Villafuerte
Optus Internet Engineering
t: +61 2 80825265



More information about the varnish-misc mailing list