Comet Chat with Rupy – Feedback given by Dylan Schiemann (co-founder of the Dojo Toolkit)
Rupy takes an interesting approach with a very very tiny Java server implementation. Even if Java is not your server-side language of choice, it’s worth taking a look:
Weighing less than 50KB, rupy is probably the smallest Java NIO HTTP server in the world.
Rupy is inherently non-blocking asynchronous, which makes it the ideal candidate for high concurrency real-time applications pushing dynamic data.
Tested with acme, rupy performs on average ~1500 requests per second. To put that figure in perspective; acme doesn’t use keep-alive, so that means 1500 unique TCP connections serving dynamic content per second! Thanks to NIO and an event queue to avoid selector trashing, this figure degrades gracefully under high concurrency.
In the succinct words of Rupy project lead Marc Larue that help define what Comet is really all about:
As for a starting point I think that there is a bigger picture to the new-wave of web techniques that fueled rupy’s creation.
Comet and REST both have simplicity as the common energy source, after all HTTP is just TCP and web-services being over-engineered is an understatement.Comet and REST both have simplicity as the common energy source, after all HTTP is just TCP and web-services being over-engineered is an understatement.