Improve connection performance and scalability

You can improve connection performance and scalability by specifying information in the NUMFDSERVERS and NS_CACHE configuration parameters and by using multiple listen threads.

Informix® SQL sessions can migrate across CPU VPs. You can improve the performance and scalability of network connections on UNIX by using the NUMFDSERVERS configuration parameter to specify a number for the poll threads to use when distributing a TCP/IP connection across VPs. Specifying NUMFDSERVERS information is useful if the database server has a high rate of new connect and disconnect requests or if you find a high amount of contention between network shared file (NSF) locks.

You should also review and, if necessary, change the information in the NETTYPE configuration parameter, which defines the number of poll threads for a specific connection type, the number of connections per poll thread, and the virtual-processor class in which those poll threads run. You specify NETTYPE configuration parameter information as follows:
NETTYPE connection_type,poll_threads,conn_per_thread,vp_class 

On UNIX, if vp_class is NET, poll_threads can be a value that is greater than or equal to 1. If vp_class is CPU, the number of poll_threads can be 1 through the number of CPU VPs. On Windows, poll_threads can be value that is greater than or equal to 1.

For example, suppose you specify 8 poll threads in the NETTYPE configuration parameter, as follows:
NETTYPE soctcp,8,300,NET

You can also specify 8 in the NUMFDSERVERS configuration parameter to enable the server to use all 8 poll thread to handle network connections migrating between VPs.

You can use the NS_CACHE configuration parameter to define the maximum retention time for an individual entry in the host name/IP address cache, the service cache, the user cache, and the group cache. The server can get information from the cache faster than it does when querying the operating system.

You can improve service for connection requests by using multiple listen threads. When you specify DBSERVERNAME and DBSERVERALIASES configuration parameter information for onimcsoc or onsoctcp protocols, you can specify the number of multiple listen threads for the database server aliases in your sqlhosts information. The default value of number is 1.

The DBSERVERNAME and DBSERVERALIASES configuration parameters define database server names (dbservernames) that have corresponding entries in the sqlhosts information. Each dbservername parameter in the sqlhosts information has a nettype entry that specifies an interface/protocol combination. The database server runs one or more poll threads for each unique nettype entry.

You can use the onstat -g ath command to display information about all threads.

Copyright© 2018 HCL Technologies Limited