Re: Re: asyncio-based ZEO implementation implemented
Jim Fulton <[email protected]>
| Newsgroups | gmane.comp.web.zope.zodb |
|---|---|
| Message-ID | <CAPDm-FjvV5CHTZsDSgD_1=iVOt0qcJMs7gPdn7FVUWS_u9LUeA@mail.gmail.com> |
On Sun, Jun 19, 2016 at 10:29 PM, Christopher Lozinski <[email protected]> wrote: ... > I am very interested in documenting this stuff. My desire to do this has > been steadily increasing. I have found I really enjoy documenting open > source software, it is a great way to learn it, the authors are always very > supportive. And it is hugely needed. This change is mostly internal. Some user visible features have been dropped (cache verification, ZEO authentication protocol, monitor server), but the change will pave the way for features to be added (SSL and SSL based or enabled authentication, client-side conflict resolution, ...) > Not just what is async ZODB, but how > do we use it to build Async Apps? There's a common misconception that this change somehow makes ZEO more asynchronous than it was before or somehow enabled asynchronous apps. Nothing could be further from the truth. > Okay, so how do we do this? Do I just sit and look at the code? Do we do > it as a code review? So first of all, the main things in this change: - Change from one asynchronous networking framework (asyncore) to another (asyncio). - Make connection logic much simpler. - Simplify client threading model, eliminating many locks - Reduce extra levels of indirection that made the code harder to reason about. I would recommend starting with ZEO.asyncio, noting that the cache is now managed by the networking thread and doesn't require locks, then look at the changes to ClientStorage, StorageServer, and ZEO.runzeo and ZEO.tests.forker. Ask questions in the PR or on IRC. If you're feeling especially thorough, you could review the test changes. ... > Is there a tool you recommend for comments. Should I make a milion issues > on github? You can ask questions and add comments in the PR, either at the line level or at the PR level. > How much time should this take? That depends on how knowledgeable you are to begin with and how thorough your review. 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.