Iain,

After reading your question again I should clarify that RabbitMQ would not
be a solution for sending back a response in your case. RabbitMQ can be
used in if you want to communicate between your Pyramid and Django app and
services, it would not allow you to "push" responses from your server to
your client.

On Tue, Sep 29, 2015 at 4:17 PM, Vincent Catalano <
[email protected]> wrote:

> 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
>



-- 
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.

Reply via email to