[note: Subject changed from "go crazy with me" -- LoL] > I'd also like to hear what people are doing when the apache model has > scaling problems. We have one problematic project here: we're a > gateway and must server a high number of very slow customers to a high > number of very slow feeds. Ideally we would run this in an event loop > or in coroutines/continuations style, but we have not yet tried that > out, mainly because so much of our infrastructure relies on everything > being apache. Is there something in apache2 that would make our lives > easier? (we have not yet switched to apache2 at all)
Hi Andreas, I wonder if our asynchronous system could help. As I mentioned in a post earlier today, it's not yet released but we have been considering doing that perhaps in January when we have more time to polish it up for general consumption. Our email connection management software starts life as a mod_perl app, but forks a tiny Event::Lib based pure-Perl app after configuration to handle all the slow connections. A pool of mp2 processes is kept around, running a very simple protocol handler to receive and process short running but CPU-intensive requests from the IO subsystem. The nice thing about this architecture is that it still gives us access to the goodies mp2 has to offer -- such as application configuration -- while also allowing us to keep the number of Perl interpreters to a minimum by using a single process, event-driven IO model. Alas, if only the Perl interpreter was truly thread safe and did not clone a new interpreter for each thread, we could just use threads... Those Python people have it good in some ways. TTUL Ken -- MailChannels: Assured Messaging (TM) | http://mailchannels.com -- Suite 203, 910 Richards St. Vancouver, BC, V6B 3C1, Canada Direct: +1-604-729-1741