John Reese - Thinking Outside the GIL with AsyncIO and Multiprocessing - PyCon 2018

  Рет қаралды 42,567

PyCon 2018

PyCon 2018

6 жыл бұрын

Speaker: John Reese
Have you ever written a small, elegant application that couldn't keep up with the growth of your data or user demand? Did your beautiful design end up buried in threads and locks? Did Python's very special Global Interpreter Lock make all of this an exercise in futility?
This talk is for you! With the combined powers of AsyncIO and multiprocessing, we'll redesign an old multithreaded application limited by the GIL into a modern solution that scales with the demand using only the standard library. No prior AsyncIO or multiprocessing experience required.
Slides can be found at: speakerdeck.com/pycon2018 and github.com/PyCon/2018-slides

Пікірлер: 26
@Sousleek
@Sousleek 6 жыл бұрын
This video became a gold mine for me
@haritmohansaxena732
@haritmohansaxena732 4 жыл бұрын
at @5:55 , you know he is a great programmer when he says, his coworker 'JSON'.
@kosmonautofficial296
@kosmonautofficial296 2 жыл бұрын
awesome video! I am looking forward to trying this out with AsyncSSH
@brambeer5591
@brambeer5591 4 жыл бұрын
This is great, thanks!
@user-bp1it1xb4x
@user-bp1it1xb4x 5 жыл бұрын
great video well done
@lawrencedoliveiro9104
@lawrencedoliveiro9104 3 жыл бұрын
8:25 multiprocessing supports shared storage, but you cannot put arbitrary Python objects here, only ctypes objects.
@SteelBlueVision
@SteelBlueVision 6 жыл бұрын
As usual the links to both the slides and speakerdeck point to nothing! Please fix this.
@lawrencedoliveiro9104
@lawrencedoliveiro9104 3 жыл бұрын
9:07 I have wondered about constructs like async def myfunc ... : return await «expr» which could be simplified to def myfunc ... : return «expr» Given that the caller expects an awaitable in either case, the behaviour is exactly the same.
@xiaolu7988
@xiaolu7988 5 жыл бұрын
Can someone tell me what font he is using for his code, for example at 2:43 there?
@Yanonix
@Yanonix 5 жыл бұрын
Probably Hack: github.com/source-foundry/Hack
@n7cmdr
@n7cmdr 4 жыл бұрын
It's Fira Code: github.com/tonsky/FiraCode
@DaLoler1
@DaLoler1 3 жыл бұрын
11:25
@mephistotel87
@mephistotel87 6 жыл бұрын
1. get_nowait() raises queue.Empty exception. How do you handle that? I don't see 2. In that case there will be raised exception from future in run_until_complete which will lead to terminating all application
@n7cmdr
@n7cmdr 6 жыл бұрын
Yes, I elided the exception handling in the slides for the sake of brevity, but the code in the aiomultiprocess library correctly handles the Empty exceptions. See github.com/jreese/aiomultiprocess/blob/master/aiomultiprocess/core.py for more details.
@dclxviclan
@dclxviclan Жыл бұрын
Hmm... i look this
@pynchia4119
@pynchia4119 4 жыл бұрын
Great library, well done! Just relax and learn to speak in public
@pourimow2630
@pourimow2630 4 жыл бұрын
Why jumping through so many hoops to use Python instead of using a better programming language?
@wlgrd7052
@wlgrd7052 3 жыл бұрын
Define "better"
@lawrencedoliveiro9104
@lawrencedoliveiro9104 3 жыл бұрын
I sense a straggler from the Java/C♯/PHP crowd ...
@kicknotes
@kicknotes 5 жыл бұрын
I really wish speakers would learn a bit more about speaking or practice for an objective listener (for feedback) before presenting. I know nerves can be a factor, but constant "ums" and "uhs" can really detract from a presentation. This was hard for me to watch as a result of that.
@checkerist
@checkerist 5 жыл бұрын
I haven't noticed this until reading your comment!
@therumbler
@therumbler 5 жыл бұрын
I really wish KZbin commenters would learn a bit more about communication or practice with an objective reader (for feedback) before commenting. I know they're just trying to give advice, but the condescending tone and odd passive aggressiveness can really distract from the message. This comment was hard to read as a result of that.
@trixn4285
@trixn4285 4 жыл бұрын
Well, yeah, is it possible that you don't understand the topic well enough to follow so you focused on the style of presentation rather than the content? Surely it wasn't exceptionally entertaining but totally fine and with high quality information. Didn't really notice the "ums" until reading your comment. You could be a bit more thankful for being provided with quality information for free.
Carl Meyer - Type-checked Python in the real world - PyCon 2018
32:10
Задержи дыхание дольше всех!
00:42
Аришнев
Рет қаралды 3,6 МЛН
УГАДАЙ ГДЕ ПРАВИЛЬНЫЙ ЦВЕТ?😱
00:14
МЯТНАЯ ФАНТА
Рет қаралды 4,3 МЛН
НЫСАНА КОНЦЕРТ 2024
2:26:34
Нысана театры
Рет қаралды 1,1 МЛН
Многопоточность и GIL
1:21:47
Computer Science Center
Рет қаралды 35 М.
Lisa Roach - Demystifying the Patch Function   - PyCon 2018
37:07
PyCon 2018
Рет қаралды 46 М.
The moment we stopped understanding AI [AlexNet]
17:38
Welch Labs
Рет қаралды 809 М.
Unlocking your CPU cores in Python (multiprocessing)
12:16
mCoding
Рет қаралды 298 М.