in reply to Apache Processes Hung on Socket Issue

local $SIG{ALRM} = sub { die 'timed out' };
Above is connection timeout.
Timeout => $connect_timeout,
Above is socket timeout.
You need both.

Replies are listed 'Best First'.
Re^2: Apache Processes Hung on Socket Issue
by eallenvii (Novice) on Jul 03, 2013 at 23:13 UTC
    I'm not sure what the difference is...but i could see a leap in logic to state that by cutting off the socket creation with a connection timeout would support my theory of the thread being left in a state unable to create further sockets?

      Internet is full of recommendations to use SIG ALARM while socket connect, and as far as I remember, socket "Timeout" option was not working right for connection stage (and/or for DNS timeouts). (not sure about current IO::Socket versions, through)

      Also SIG ALARM is not affecting socket read/write timeouts happened after alarm(0)

      thread being left in a state unable to create further sockets?
      Need probably to see more code, what happening after/before eval?