Re: Applause for ZODB! And a question: How do you get pending change info from a transaction object?

Jim Fulton <[email protected]> Tue, 1 May 2018 08:24:44 -0600
Newsgroups gmane.comp.web.zope.zodb
Message-ID <CAPDm-Fjmsv_E8Jt-DQmBej5CSnDPnGM+nTzzJgyS_Q22QhvRBg@mail.gmail.com>
On Tue, May 1, 2018 at 7:25 AM, Jim Fulton <[email protected]> wrote:

>
>
> On Sun, Apr 29, 2018 at 5:22 PM, David Pesta <[email protected]> wrote:
>
>> In Tornado, all things happen on a single thread:
>> http://www.tornadoweb.org/en/stable/#threads-and-wsgi
>>
>> (Async/await can also be used in Tornado, but I'm pretty sure I can get
>> by without that additional complexity for this.)
>>
>
> Oh gawd, here we go again. :)
>
> Asynchronous I/O is great for .... I/O.
>
> If you have blocking operations, then it breaks down.  This was why the
> pre-Node norm was to use asynchronous servers to manage requests and thread
> pools to get work done.
>
> ZODB is fundamentally at odds with Asynchronous programming because
> loading objects into cache is *transparent* by design.  This means that
> any object access is potentially blocking.  The alternative is to stick an
> await in front of every object access, which is gross IMO. (Await is a
> disease that will likely take over most applications that use it.)
>

I should have noted that gevent is known to work well with ZODB.  It
provides a threaded programing model while doing asynchronous I/O under the
hood. I'm a fan. Bonus: the main gevent developer is also one of the main
ZODB developers.

Jim

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