Best Practices for Timeouts Configuration

Overview

This article details the different configurable timeout settings and their recommended values as well as their significance in cluster configuration.

 

Information

The ScaleArc appliance sits between applications and databases transparently and must therefore handle two sets of connections; one from the applications to ScaleArc (Client connection) and another set from ScaleArc to database servers (Server connection).

This gives rise to the categorization of ScaleArc timeout settings into two groups reflecting this split between the client and server connections.

Client Connection Timeouts

Idle Client Connection Timeout

This sets the time to wait (in seconds) before closing an idle connection by a client (Webserver or Application server).
It is advisable to set this value to more than the client connection pool timeout if you use a client-side connection pool (Java/Apache connection pooling).

Property Description
Parameter Location CLUSTERS > Cluster Settings > CLIENT
Parameter Type Number
Default Value 1200 seconds
Value Range (if numeric) 0 - UNLIMITED
Modifiable without restarting the cluster YES

 

Unresponsive Server Timeout

You can enter the maximum time (in seconds) to wait for a response from a server before the server is deemed unresponsive and results in an error for the client. This setting also limits query execution time.

Property Description
Parameter Location CLUSTERS > Cluster Settings > DEBUG
Parameter Type Number
Default Value 600 seconds
Value Range (if numeric) 0 - UNLIMITED
Modifiable without restarting the cluster YES

 

Server Connection Timeouts

Idle Server Connection Timeout

This determines the duration of time for ScaleArc to wait (in seconds) before closing an idle connection to a database server. The default is 300 seconds.

Property Description
Parameter Location CLUSTERS -> Cluster Settings -> SERVER
Parameter Type Number
Default Value 300 seconds
Value Range (if numeric) 0 - UNLIMITED
Modifiable without restarting the cluster YES

 

Server Connection Timeout

This setting represents the maximum time in seconds, after which the server connection will be closed if ScaleArc is unable to open a TCP connection with the server. The default is 5 seconds and can be changed by navigating to CLUSTERS > Cluster settings > SERVER.
Server_Connection_Timeout.png

 

Surge Queue Timeout

This setting determines the timeout value for client connections which are waiting for an available server connection. If ScaleArc is not able to assign the server connection before the specified amount of timeout value, then ScaleArc will return a "Connection timeout in Server Queue" error message.

Surge_Queue_Timeout2.png

ScaleArc will keep the connections/queries in queue until the connection has exceeded the max time in the queue which is set in the CLUSTERS > Cluster settings > SERVER then scrolling to Surge Queue Timeout. By default, this is set to 60 seconds.

Note: The Unresponsive Server Timeout affects both client and server connections.

Back to top

Comments

0 comments

Article is closed for comments.