complex alternative to Ajax polling ..

I had seen that many of the periodic update methods looking for
changes to display in the browser in the rails book poll the server
every so many seconds which seems to generate alot of traffic.

A project that I had been working on is they want to make an ajax
request to the server which will just wait and never return until the
server decides that a change has occurred and at that time which could
be several minutes or hours the response would go back to the browser.
The problem with this seems to be that it won't work with rails
because each http request is serial. In order for this to work, I need
some kind of proxy server or alternative server through some other
means that can have multiple http requests outstanding and these would
either time out eventually or return at some point.

How can I do this or which rails books, blogs, or websites might have
examples ? Can webrick or event machine be usefull here ?

The problem with this seems to be that it won’t work with rails

because each http request is serial.

And it would tie up a Mongrel/Passenger child during the request…

How can I do this or which rails books, blogs, or websites might have

examples ? Can webrick or event machine be usefull here ?

I’d definitely say go with Event Machine. I’m having great success using it for highly concurrent short lived requests (serving out of a cache and regenerated behind the scenes) - managing about 4,500 requests/second per process (and we run 1 process per CPU core and it scales fine!).

Good luck.

Cheers,

Andy