Sorry, I haven't had a chance to try this patch out. While not ideal, the static number of threads isn't as bad as I initially thought. When I first tried it, ulimit -u was too low (the default, 1024) to support the number of threads specified (5000) and the machine went bonkers and triggered a watchdog reboot. This happened a few times before I figured out what was wrong. Once I upped the ulimit for user processes, things worked much better.
At both low and heavy load, we see a pretty constant ~330 megs of resident memory with 5000 static threads and negligble CPU usage. To me, this isn't a big deal. Just a suggestion, but it might be a good idea to up the ulimit before dropping root, since the required max can easily be determined. - Neil On Monday 19 March 2012 11:21:07 Joe Gooch wrote: > True, stock 2.6 doesn't have this, but it's not all that hard to implement. > > Try this patch, and set ThreadModel dynamic in your config. > http://goochfriend.org/pound/pound_2.6_threadmodels.patch > > Joe > > > -----Original Message----- > > From: Leo [mailto:[email protected]] > > Sent: Monday, March 19, 2012 3:53 AM > > To: [email protected] > > Subject: Re: [Pound Mailing List] Pound threading model in 2.6 > > > > Hello Neil, > > > > AFAIK there is no possibility to get the old threading model in Pound > > 2.6. You have to determine the maximum number of threads you will need > > at peak time (in your case 20,000 threads) and set it in your pound > > config.Pound will start all these threads at startup then :-( > > > > I have already complained about this behaviour > > (http://www.apsis.ch/pound/pound_list/archive/2012/2012- > > 01/1326878271000#1326878271000) > > and some of my suggestions have been added to the feature list for > > Pound > > 2.7 > > (http://www.apsis.ch/pound/pound_list/archive/2012/2012- > > 02/1328374222000#1328374222000) > > > > Hope this helps ... > > > > Regards, > > Leo > > > > On 03/16/2012 07:23 PM, Neil Skrypuch wrote: > > > I was wondering if there is any way to get the Pound 2.5 behaviour > > > > for > > > > > threads in Pound 2.6+. > > > > > > We have a somewhat atypical setup involving Pound where the old > > > behaviour was strongly preferable. Basically, we handle large volumes > > > of long lived connections (think Websockets). With Pound 2.5, we had > > > no trouble supporting over 10,000 concurrent connections, whereas > > > using the default Pound 2.6 setup things fell over around 110. > > > > > > Now, I can bump up the Threads value to 10,000 or 20,000 (or some > > > other equally large number), and this works, but this means that > > > > Pound > > > > > always has > > > 10,000 or 20,000 threads running, which isn't very nice to the > > > > system. > > > > > I should point out that we don't normally have 20,000 concurrent > > > connections, this is an unusual event, but we do need to support it. > > > > > > So, is there any way to get back the old threading behaviour, or do > > > > we > > > > > just have to tough it out and always run a huge number of Pound > > > > threads? > > > > > - Neil > > > > > > -- > > > To unsubscribe send an email with subject unsubscribe to > > > > [email protected]. > > > > > Please contact [email protected] for questions. > > > > -- > > To unsubscribe send an email with subject unsubscribe to > > [email protected]. > > Please contact [email protected] for questions. > > -- > To unsubscribe send an email with subject unsubscribe to [email protected]. > Please contact [email protected] for questions. -- To unsubscribe send an email with subject unsubscribe to [email protected]. Please contact [email protected] for questions.
