<story><title>Write Fast Apps Using Async Python 3.6 and Redis</title><url>https://eng.paxos.com/write-fast-apps-using-async-python-3.6-and-redis</url></story><parent_chain></parent_chain><comment><author>zzzeek</author><text>&amp;gt; we make heavy use of asyncio because it’s more performant&lt;p&gt;more performant than....what exactly?   If I need to load 1000 rows from a database and splash them on a webpage, will my response time go from the 300ms it takes without asyncio to something &amp;quot;more performant&amp;quot;, like 50ms?  Answer: no. async only gives you throughput, it has nothing to do with &amp;quot;faster&amp;quot; as far as the Python interpreter &amp;#x2F; GIL &amp;#x2F; anything like that.   If you aren&amp;#x27;t actually spanning among dozens&amp;#x2F;hundreds&amp;#x2F;thousands of network connections, non-blocking IO isn&amp;#x27;t buying you much at all over using blocking IO with threads, and of course async &amp;#x2F; greenlets &amp;#x2F; threads are not a prerequisite for non-blocking IO in any case (only select() is).&lt;p&gt;it&amp;#x27;s nice that uvloop seems to be working on removing the terrible performance latency that out-of-the-box asyncio adds, so that&amp;#x27;s a reason that asyncio can really be viable as a means of gaining throughput without adding lots of latency you wouldn&amp;#x27;t get with gevent.   But I can do without the enforced async boilerplate.   Thanks javascript!</text></comment>
<story><title>Write Fast Apps Using Async Python 3.6 and Redis</title><url>https://eng.paxos.com/write-fast-apps-using-async-python-3.6-and-redis</url></story><parent_chain></parent_chain><comment><author>mixmastamyk</author><text>Can anyone recommend a good book to get started on concurrency, with discussions of models, and a few implementations such as golang and python 3.5+?&lt;p&gt;While I can write this kind of code, I don&amp;#x27;t feel like I completely understand some of the concepts.</text></comment>