What is the TheadIncrement value
Hi,
In my magnus.conf I have kept the RqThrottle valued as 128 and ConnQueueSize 4096.So I guess there is going to be 128 sessions/Thread are going to be created.
Initially I saw the as the traffic was less the number of sessions created was around 5.But when the traffic is high sessions are more.Now I did a gdb and saw the number of threads created is more than 128.
Is there any Thread increment concept is there as by depending on the traffic it will exceed the RqThrottle value as well?
Looking forward for response.
Thanks
-A
[575 byte] By [
ujara] at [2007-11-27 7:08:32]

# 1
The RqThrottle directive controls how many request-processing threads ("sessions") the server will create. The server will never exceed this value under any circumstance. However, the server has other threads in addition to request-processing threads. For example, it creates threads for managing keep-alive connections and threads for doing housekeeping tasks like flushing log files.
# 2
Thanks for the update.So how many threads does it creates for managing keep-alive connections?
Like in my scneario gdb showed my around 150 threads got created and RqThrottle was 128.Does it have any dependency with the KeepAliveThreads and MaxKeepAliveConnections?
What would be the ideal value for MaxKeepAliveConnections RqThrottle 128, ConnectionQueue 4096 say I am handling 1900 to 3800 concurrent users?
Thanks in advance.
-A
ujara at 2007-7-12 19:00:05 >

# 3
Do you mean : Number of current threads are dependent on KeepAliveThreads and
MaxKeepAliveConnections?
Number of current threads = Number of Session threads
created at the moment (Max value = RqThrottle)
+ Number of keep-alive threads ( = KeepAliveThreads)
+ Other house keeping threads.
Number of current threads is indepependent of MaxKeepAliveConnections (AFAIK).
Server doesn't create more threads to handle more keep alive connection.
It is hard for me to tell the ideal value of MaxKeepAliveConnections in your
situation. But here are few facts.
* More are the number of MaxKeepAliveConnections, more time server spend
polling those connections (for new requests). So it has some impact of CPU usage.
Ofcourse more system resources are required to keep more connections alive
e.g memory.
* If MaxKeepAliveConnections is too low, server will close previous keep alive
connections too often.
* It doesn't make sense to keep MaxKeepAliveConnections more than number of
expected concurrent users (in your case 3800). Regarding number of
concurrent users, we should note that not all of them may have requested to keep
the connection alive.
You need to watch your perf dump statistics under various load condition to
decide about MaxKeepAliveConnections. See the perfomance tuning guide for
more details.