On Mon, Jun 4, 2012 at 12:15 AM, Steve Edwards <[email protected]> wrote: > This AGI (which should only take about 20 seconds) occasionally takes a > minute or 3 to complete, but it does complete.
You should also be seeing the Autodestruct message? I put a sleep 60 in my exit handler and can create that message on demand. What kinds of problems are > you seeing when your AGI takes too long? The Autodestruct message is obviously just the first sign that problems are ahead. Unabated, the calling rate is sufficient that in one case I eventually ran out of RTP ports with presumably all the calls trying to be torn down but still hanging around. Initially I assumed it was my database transactions gumming up the works. I am using pgpool locally to cache connections to the actual database. The exit handler connects to localhost to communicate with pgpool. During the time when the Autodestruct messages are flowing, however, I could not find any database connection problems (testing in real time from the CLI on a troubled box). The connection pool is not starved. DNS lookups and new connections are subsecond. So I don't think it is actually my exit handler code but perhaps something else that is causing contention. > *) If I get a chance to re-code it, I'd just write a database record and > then cobble up a daemon or cron job to do the heavy (and time consuming) > lifting. Totally agree. Before the outbound leg begins, I write a database record. For scale, my ultimate exit handler might just write some variables to a local unique file or reliable syslog or message queue of some sort to minimize processing in the teardown of a call and NOT anger the Asterisk gods :-) The problem I'm having is that for some reason, running tcpdump simultaneously and logging all SIP UDP to files is making the supposedly more powerful G7 box have fits that start with Autodestruct ... method BYE messages. The lesser G5 model DL 360 seems to handle the identical load and tcpdump with no problem. I have a total of 20 servers, 10 model G5 and 10 model G7 and the pattern is clear. The load is distributed by a simple A record shuffle from a SER instance. Really basic stuff. I'm going to find a copy of that hardware enumeration utility mentioned in this thread and post some info. > > -- > Thanks in advance, > ------------------------------------------------------------------------- > Steve Edwards [email protected] Voice: +1-760-468-3867 PST > Newline Fax: +1-760-731-3000 > > > -- > _____________________________________________________________________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > New to Asterisk? Join us for a live introductory webinar every Thurs: > http://www.asterisk.org/hello > > asterisk-users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users -- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- New to Asterisk? Join us for a live introductory webinar every Thurs: http://www.asterisk.org/hello asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
