Hey Iain, I think Jonathan's solution is pretty much spot on. As far as application messaging goes, I think you may be a bit confused, RabbitMQ is a messaging application that's written in Erlang. By default, RabbitMQ uses it's own message broker called AMQP, but you can swap it out for any number of brokers - including Redis. If you are looking for a solid messaging application, RabbitMQ is a good direction to go.
On Tue, Sep 29, 2015 at 3:20 PM, Iain Duncan <[email protected]> wrote: > Hi Paul, yeah SSE looks good too, but there is zero IE support. :-/ Have > you any real world experience of using HTTP Server-Side-Events on IE with > polyfills? > > iain > > On Tue, Sep 29, 2015 at 3:13 PM, Paul Everitt <[email protected]> > wrote: > >> >> As an alternative to polling to get the Redis state, you could consider >> HTTP server-side-events. >> >> —Paul >> >> On Sep 29, 2015, at 5:41 PM, Jonathan Vanasco <[email protected]> >> wrote: >> >> we have a similar situation. `pyramid` is the main web application. >> when a user uploads a file, it is handed off to `celery` via `redis`, >> which handles all the image resizing and uploading onto S3. >> >> the solution we went with: >> >> • short polling on a configurable delay. We default to 2500ms, and half >> or double it (manually) depending on average server load. >> >> • we use a VERY STRIPPED DOWN pyramid view. It's part of the normal app, >> but inherits from a different base class (we use class based views) and has >> a very lean integration with pyramid. it basically has 20% the overhead of >> our other views. this allows for the short polling to even be 100s of ms >> if we want. >> >> • just to be safe and bust aggressive caching, we send a nonce with each >> poll. (originally we put the nonce in the url, but that had a wee bit of >> overhead in pyramid) >> >> Since the "answer" is going to be in redis, you'll have a blazing fast >> lookup. >> >> • a streamlined view/route gets it done rather perfomant. >> • if things slow down, you can pull it out and build a dedicated pyramid >> service (it won't be serving other routes, so the memory footprint will be >> smaller and you can run way more instances) >> • if things still don't scale well, then you can think about nodejs. we >> have some twisted services and would probably choose nodejs for this task >> over twisted -- it's better suited and you'll be abandoning enough of your >> codebase to work in Twisted, that it's worth starting such a small project >> from scratch in nodejs. >> >> You could definitely do long polling instead. short polling is just super >> simple to get up and running. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "pylons-discuss" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/pylons-discuss. >> For more options, visit https://groups.google.com/d/optout. >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "pylons-discuss" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/pylons-discuss. >> For more options, visit https://groups.google.com/d/optout. >> > > -- > You received this message because you are subscribed to the Google Groups > "pylons-discuss" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/pylons-discuss. > For more options, visit https://groups.google.com/d/optout. > -- Vincent Catalano Software Engineer and Web Developer, (520).603.8944 -- You received this message because you are subscribed to the Google Groups "pylons-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/pylons-discuss. For more options, visit https://groups.google.com/d/optout.
