Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #68209 > unrolled thread

Re: which async framework?

Started bySturla Molden <sturla.molden@gmail.com>
First post2014-03-11 10:47 +0000
Last post2014-03-11 11:59 +0000
Articles 5 — 4 participants

Back to article view | Back to comp.lang.python

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: which async framework? Sturla Molden <sturla.molden@gmail.com> - 2014-03-11 10:47 +0000
    Re: which async framework? Marko Rauhamaa <marko@pacujo.net> - 2014-03-11 12:58 +0200
      Re: which async framework? Ian Kelly <ian.g.kelly@gmail.com> - 2014-03-11 05:48 -0600
        Re: which async framework? Marko Rauhamaa <marko@pacujo.net> - 2014-03-11 13:54 +0200
          Re: which async framework? Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2014-03-11 11:59 +0000

#68209 — Re: which async framework?

FromSturla Molden <sturla.molden@gmail.com>
Date2014-03-11 10:47 +0000
SubjectRe: which async framework?
Message-ID<mailman.8041.1394534898.18130.python-list@python.org>
Chris Withers <chris@simplistix.co.uk> wrote:
> Hi All,
> 
> I see python now has a plethora of async frameworks and I need to try 
> and pick one to use from:
> 
> - asyncio/tulip
> - tornado
> - twisted

I'd go for using iocp, epoll and kqueue/kevent directly. Why bother to
learn a framework? You will find epoll and kqueue/kevent in the select
module and iocp in pywin32.

Sturla

[toc] | [next] | [standalone]


#68211

FromMarko Rauhamaa <marko@pacujo.net>
Date2014-03-11 12:58 +0200
Message-ID<87lhwhovbo.fsf@elektro.pacujo.net>
In reply to#68209
Sturla Molden <sturla.molden@gmail.com>:

> I'd go for using iocp, epoll and kqueue/kevent directly. Why bother to
> learn a framework? You will find epoll and kqueue/kevent in the select
> module and iocp in pywin32.

You beat me to it.

However, I'm hoping asyncio will steer the Python faithful away from
blocking threads to the "right way" of doing networking. The Java people
came to their senses with the advent of NIO.

I think one of the main remaining sticking points is database access. I
barely do any database stuff, but last I checked it's all done with
synchronous APIs.


Marko

[toc] | [prev] | [next] | [standalone]


#68213

FromIan Kelly <ian.g.kelly@gmail.com>
Date2014-03-11 05:48 -0600
Message-ID<mailman.8043.1394538527.18130.python-list@python.org>
In reply to#68211
On Tue, Mar 11, 2014 at 4:58 AM, Marko Rauhamaa <marko@pacujo.net> wrote:
> Sturla Molden <sturla.molden@gmail.com>:
>
>> I'd go for using iocp, epoll and kqueue/kevent directly. Why bother to
>> learn a framework? You will find epoll and kqueue/kevent in the select
>> module and iocp in pywin32.
>
> You beat me to it.
>
> However, I'm hoping asyncio will steer the Python faithful away from
> blocking threads to the "right way" of doing networking.

eventlet has 115k downloads from PyPI over the last month.  gevent has
143k.  Twisted has 147k.  Tornado has 173k.

I'd say that a lot of Python users are already doing non-blocking
network I/O, in one form or another.

[toc] | [prev] | [next] | [standalone]


#68214

FromMarko Rauhamaa <marko@pacujo.net>
Date2014-03-11 13:54 +0200
Message-ID<87fvmposqb.fsf@elektro.pacujo.net>
In reply to#68213
Ian Kelly <ian.g.kelly@gmail.com>:

> eventlet has 115k downloads from PyPI over the last month. gevent has
> 143k. Twisted has 147k. Tornado has 173k.
>
> I'd say that a lot of Python users are already doing non-blocking
> network I/O, in one form or another.

There aren't so many network developers in the world. That must be some
web crawlers getting more than they bargained for.


Marko

[toc] | [prev] | [next] | [standalone]


#68215

FromOscar Benjamin <oscar.j.benjamin@gmail.com>
Date2014-03-11 11:59 +0000
Message-ID<mailman.8044.1394539221.18130.python-list@python.org>
In reply to#68214
On 11 March 2014 11:54, Marko Rauhamaa <marko@pacujo.net> wrote:
> Ian Kelly <ian.g.kelly@gmail.com>:
>
>> eventlet has 115k downloads from PyPI over the last month. gevent has
>> 143k. Twisted has 147k. Tornado has 173k.
>>
>> I'd say that a lot of Python users are already doing non-blocking
>> network I/O, in one form or another.
>
> There aren't so many network developers in the world. That must be some
> web crawlers getting more than they bargained for.

I have no idea how many network developers there are in the world but:
1) Many people may be installing this from pypi as a dependency of
some other application that they use. So you should think that it
counts something closer to "users" rather than developers.
2) There are problems with the download counts on PyPI but the numbers
above are sufficiently high that they should indicate a wide level of
usage of the libraries.


Oscar

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.python


csiph-web