Check your DSN settings, and set the login timeout to something reasonable
like 5 seconds. The default is 30 seconds. You may have to tweak this a
bit based on the time it takes to actually authenticate to your DB servers.
All our DBs are local to the network and I've never had issue with a 5
second timeout.
Also ensure you DSN have "maintain database connection" checked. This is a
performance tweak in general. This forces CF to reuse the connection and
reduces the overhead running a query.
What is happening is CF is still attempting to connect to the DB server as
needed. Each thread doing so, will wait until the login timeout is met
before terminating.
CF has a finite number of threads, which is outlined in the CFAdmin. The
threads are getting used up by the waiting DB requests, once this reaches
the maximum number of threads, additional requests are queued and you will
begin to see slowness. Something like a cascade effect.
The 5 seconds won't solve the issue all around. It just releases those
threads faster. Depending on the number of queries attempting to run on the
failed DB server. You may still see slowness.
~Byron Mann
Lead Engineer & Architect
HostMySite
Archive:
http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:359163