Re: anything new?

Jim Fulton <[email protected]>
Newsgroups gmane.comp.web.zope.zodb
Message-ID <CAPDm-FhbqG0BzL9+PiM7F0oMpn=a4GP=NiQxejzKyG4gGzQ-7g@mail.gmail.com>
On Tue, Apr 5, 2016 at 4:56 PM, Bill Janssen <[email protected]> wrote:
> I'm a little confused about why this is an issue.

I'm a little confused about why your confused and what "this" you're
referring to.


> There are plenty of
> Python service backend frameworks to use.  No need to write another one, I'd
> think.

I'm certainly not proposing that.

> I tend to be partial to Tornado, because of the relative lack of
> features (yes, a virtue), and clarity of the code, but Flask, for instance,
> would also work.

Huh? Flask is a web framework.

> Isn't the use of asyncio mainly on the server side to
> service requests from the clients?

ZEO clients talk to ZEO servers over a protocol that isn't HTTP, as
I'm sure you're aware.

I find using an async library attractive for implementing this
protocol on both the client and server, but the same library needn't
be used on both sides.  The existing client and server implementations
have lots of problems, on top of being implemented on an obsolete
async framework.

I'm committed to providing Python 2 support.  It's unclear whether
Trollius would be useful for this.  The main problems with Trollius
seem to be with the coroutine support, and the ZEO implementation I'm
working on doesn't use coroutines.

If Trollius isn't workable, then I'll have to use an abstraction to
make the networking library easier to change. Fortunately, I already
have one, zc.ngi, which I originally wrote to use with ZEO. I didn't
use it for this project because asyncio+Trollius seemed like they
would work.  I'm still a bit unconvinced that Trollius won't work.  If
I have to, switching from asyncio to zc.ngi would be pretty
straightforward, as they're pretty similar.

For that matter, building a Python 2 implementation of the small parts
of asyncio that I'm using on top of some other async library probably
wouldn't be that difficult.

Jim


>
> Bill
>
>
> On Tuesday, April 5, 2016 at 1:46:47 PM UTC-7, Bill Janssen wrote:
>>
>> Yes, this was the ref:
>> https://groups.google.com/forum/m/#!topic/python-tulip/mecVwhnVP0A
>>
>> Bill
>>
>> On Tuesday, April 5, 2016 at 1:45:27 PM UTC-7, Bill Janssen wrote:
>>>
>>> Didn't someone point out that Trollius is dead?  Maybe I should look to
>>> see what Tornado uses under the covers...
>>>
>>> Bill
>>>
>>> On Tuesday, April 5, 2016 at 1:40:32 PM UTC-7, Jason Madden wrote:
>>>>
>>>>
>>>> > On Apr 5, 2016, at 15:34, Bill Janssen <[email protected]> wrote:
>>>> >
>>>> > So perhaps I should fork the code and replace the asyncore code with a
>>>> > Tornado-based ZEO server.  That way it would run on either 2 or 3, and Ben
>>>> > Darnell could worry about the async parts.
>>>> >
>>>> > Bill
>>>> >
>>>> > On Tuesday, April 5, 2016 at 1:31:48 PM UTC-7, Bill Janssen wrote:
>>>> > OK, good to know.  Shame that's Python 3 only; I can't use that.
>>>> >
>>>> > Bill
>>>>
>>>> We're also still requiring Python 2 support. I have a proof-of-concept
>>>> fork at https://github.com/NextThought/ZEO/tree/gevent that replaces
>>>> asyncore with gevent (which runs on 2 and 3), but I ran into two problems:
>>>>
>>>> - I was trying to keep the overall design the same, and that turned out
>>>> not to be a very suitable use of greenlets and gevent; in fact, it performed
>>>> *faster* by simply having gevent monkey-patch select and threads in place
>>>> than the native port I was working on. Some broader refactoring would be
>>>> needed to best take advantage of gevent and greenlets and I didn't have the
>>>> time then to look into it.
>>>> - gevent isn't really production strength on Windows in my opinion,
>>>> given the limits of libev and Windows select code, so that would be a step
>>>> backwards. However, the gevent devs (me :) are looking into a port to libuv,
>>>> which is production ready on Windows which would solve that particular
>>>> problem.
>>>>
>>>> Jason
>
> --
> You received this message because you are subscribed to the Google Groups
> "zodb" 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/d/optout.



-- 
Jim Fulton
http://jimfulton.info

-- 
You received this message because you are subscribed to the Google Groups "zodb" 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/d/optout.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.