Difference between timeouts

#1
Maybe it's just me, but the documentation about the different types of timeout settings is confusing.Specifically, I don't see how Max Idle Time and Connection Keepalive Timeout are related. Perhaps describing a real world scenario would help explain the difference.

Also, will the Environment variables that you set on the Ruby Rails tab override the settings that you set in the text fields?
 

mistwang

LiteSpeed Staff
#2
"Max Idle time" tells LSWS when to kill the process/application, while "Connection Keepalive Time" tells LSWS when to close the connection, while the process serving the connection may still running, ready to serve next connection.

Those configurations control web server behavior, while environment variables control the behavior of the application (external processes).
 
#3
So "Max Idle Time" has a different function than LSAPI_MAX_IDLE?

From reading the documentation, on a dedicated server, setting Max Idle Time to -1 will make sure that the external applications never exit. If Max Idle Time is set to -1, what happens when the Connection Keepalive Timeout is reached.

Thanks
Ian
 
#7
Thanks. Perhaps some sort of technical document that describes how LSAPI works and interacts with LS would be useful. Does any such thing exist?
 
#8
I did some experimenting and came up with the following descriptions regarding timeouts. Is this accurate?


Environment: LSAPI_MAX_IDLE = how long a ruby child process will wait before the master ruby process terminates it
Environment: LSAPI_MAX_REQS = the number of requests a child process will handle before it is terminated

MAX_IDLE_TIME = how long the master ruby process will wait before terminating completely
Connection Keepalive Timeout = how long a Litespeed will keep a connection open with a process before disconnecting with that process. The process does not die.
 
Top