[Catalyst] Catalyst with Twiggy with Pocket.IO (Comet)

Tomas Doran bobtfish at bobtfish.net
Wed Nov 28 09:56:22 GMT 2012

On 27 Nov 2012, at 20:11, Jaroslav Zajonc wrote:

> Hi all,
> I'd like to enable my Catalyst based (FastCGI) application to support a Comet (Long polling) service with help of Twiggy - Pocket.IO (or Stardust like) server. Now, for my Comet server I still want to use Catalyst app for Authorization/Authentification and proxy only allowed user to Comet server.
> I am really struggling to understand how to achieve that. Actually if  possible, I'd be more than happy to have pure Catalyst app with Comet support.
> My current setup is Apache front-end server with 2nd app-server running CatalystFastCGI app. I intend to build Comet server on app-server as well.
> Any idea how can I achieve that?

Just also run Twiggy, and direct comet traffic to the twiggy instance on your front end apache..

The checking authorisation part for one user will block the server - but that's ok really, as this is quick (I mean, it's quick in FCGI, right?) and the comet connections are, by their nature, long lived - so you don't make too many of them (i.e. there are lots of idle connections - which is why you're using an async server, but these connections are long lived - the actual act of connecting is rare).

Until you have 1000s of concurrent users, you're unlikely to be doing enough re-connections to notice - and when you are, just balance connections across multiple copies of Twiggy with mod_proxy_balancer.


More information about the Catalyst mailing list