Excessive DNS lookups using Connection Manager
Posted in 2011
Topics: Performance & Tuning, Platform-Specific Issues, Clustering, Grid & MACH11
We have some batch jobs that use synonyms between Informix databases located on separate hosts that are performing slowly. Basically, the SQL job starts on the source node, it queries an Informix database on a remote node and updates a table on the source node with data it retrieved. In our old Informix 9.40 environment this job runs in about 2 minutes. In our new Informix 11.50 environment, it runs in about 13 minutes. We actually improved the performance down from 20+ minutes to 13 minutes, by forcing AIX to strictly use IP version 4 instead of IP v4 and IP v6. From IBM Documentation it appears that if IP v6 is available via the OS, the Connection Manager will try to use IP v6 for DNS resolution. Our DNS servers are configured for IP v4 so this caused extra overhead. We have worked with our Network team and they have noticed that when we use the Informix 11.50 Connection Manager, DNS lookups go through the roof consuming a great deal of time. Almost like it is doing a DNS lookup for EACH row retrieved from the remote node. When we do not use the Connection Manager, DNS lookups drop dramatically and the job completes in about 1.5 minutes. We need to use the Connection Manager in our replicated environment and we need to use it in Proxy mode due to some PowerBuilder applications in our environment that cannot use the Redirect method. Does anyone know how Connection Manager (Proxy Mode) works with DNS? Can it be configured to perform just one DNS lookup for a transaction of many rows moved over the network?
That's very odd because Connection Manager is ONLY involved when you CONNECT to the database, after that it is out of the communications between the client and the engine completely. The problem may be that this app is closing the connection after each query and reconnecting again for the next one. Somehow you need to make the connection to the server persist between queries. If this is a Java app, make sure that connection pooling is enabled in the database library layer (not a Java coder, so that may not be quite right, but you get the idea), that may resolve the issue. Art Art S. Kagel Advanced DataTools (www.advancedatatools.com) Blog: http://informix-myview.blogspot.com/ Disclaimer: Please keep in mind that my own opinions are my own opinions and do not reflect on my employer, Advanced DataTools, the IIUG, nor any other organization with which I am associated either explicitly, implicitly, or by inference. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves. On Fri, Apr 15, 2011 at 9:13 AM, SCOTT YOHONN <syohonn@gmail.com> wrote: > We have some batch jobs that use synonyms between Informix databases > located > on separate hosts that are performing slowly. Basically, the SQL job starts > on > the source node, it queries an Informix database on a remote node and > updates > a table on the source node with data it retrieved. In our old Informix 9.40 > environment this job runs in about 2 minutes. In our new Informix 11.50 > environment, it runs in about 13 minutes. We actually improved the > performance > down from 20+ minutes to 13 minutes, by forcing AIX to strictly use IP > version > 4 instead of IP v4 and IP v6. From IBM Documentation it appears that if IP > v6 > is available via the OS, the Connection Manager will try to use IP v6 for > DNS > resolution. Our DNS servers are configured for IP v4 so this caused extra > overhead. > We have worked with our Network team and they have noticed that when we use > the Informix 11.50 Connection Manager, DNS lookups go through the roof > consuming a great deal of time. Almost like it is doing a DNS lookup for > EACH > row retrieved from the remote node. When we do not use the Connection > Manager, > DNS lookups drop dramatically and the job completes in about 1.5 minutes. > We > need to use the Connection Manager in our replicated environment and we > need > to use it in Proxy mode due to some PowerBuilder applications in our > environment that cannot use the Redirect method. Does anyone know how > Connection Manager (Proxy Mode) works with DNS? Can it be configured to > perform just one DNS lookup for a transaction of many rows moved over the > network? > > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > > --20cf307f35282e54da04a0f52ec2