Hi Arnon,
On Wed, Apr 24, 2013 at 1:13 PM, Arnon Marcus <[email protected]> wrote:
> First of all, by "architecture" I was referring to the server-side, not the
> client-side.
the demo chat was running with:
$ cd <web2py_folder>
$ nohup python anyserver.pt -s gevent
was running with gevent httpserver, no tornado involved in anything.
> Secondly, when I asked "how do you combine gevent and tornado", I was
> referring to your statements:
>
> "web2py app based on tornado long polling chat example."
> The only requirement is to run it with gevent."
>
> This implies that you "are" using both, so I wondered how exactly.
It's based in concept not in implementation.
> Furthermore:
> I think you are conflating the concepts of "synchronous vs. asynchronous"
> with the concepts of "blocking-IO vs. non-blocking IO".
> I think you are also conflating the concepts of "threading" with the concept
> of "concurrency".
>
> "synchronous vs. asynchronous" - Is about code-structure.
> "blocking-IO vs. non-blocking IO" - is about performance and
> "semi-concurrency" capabilities.
Those are subjective and context dependent terms that overlap.
I see them more like this:
blocking vs non-blocking synchronous vs non-blocking asynchronous
> So unless Tornado is doing something that nobody is aware of, it IS using
> threads to implement a non-blocking-co-routine-IO-event-loop.
Can you show me some example or point me to the source code of tornado
where this is been done? I'm curious.
> Back to the issue - you said that your solution is using Tornado, and
> "requires" gevent - how so?
It's not my solution :) it's just the tornado webchat example "ported"
to web2py running
on top of gevent, in fact I take the botlle webchat example that was
based (in concepts)
on tornado one, and I only adapted to web2py as an example.
Ricardo
--
---
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.