Andreas J. Koenig wrote:
On Tue, 20 Dec 2005 14:42:12 -0800, Ken Simpson <[EMAIL PROTECTED]> said:
> [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)
I have had similar problems in the past, and my initial thoughts were
not that dissimilar to yours- I was tempted to go with a scheme solution
based on continuations, but in the end I wrote a bit of Erlang to proxy
to the backend server (it was the first serious Erlang I had written,
and it was surprisingly easy to do). It has worked well for us, and the
ratio of peak connections to revenue (and thus hardware budget) on this
system is pretty off-kilter. Not for everyone, I'm sure, as maintenance
depends on always having someone who can deal with Erlang on hand, but
it is one way, among many, I'm sure, to go. Apologies if I seem to be
evangelizing something non-perl here- the backend was mod_perl ;). I
would think that much the same result could be achieved using an
asynchronous setup. Perhaps it is irrelevant- if you are truly,
completely tied to Apache, then I'm afraid my response is more noise
than signal- but it might be worth reassessing whether or not that is
actually the case.
T Smith