Slide 1

Slide 1 text

Desenvolvendo APIs REST com Python 3 e AsyncIO Renato Pedigoni @rpedigoni

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

Perguntas: @caipyra

Slide 6

Slide 6 text

Aplicações se comunicam

Slide 7

Slide 7 text

E ficam bastante tempo bloqueadas

Slide 8

Slide 8 text

Apps I/O bound

Slide 9

Slide 9 text

API Gateway -api

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

Apps Python 
 async no Magalu • Catálogo • Checkout • Feeds • Meios de pagamento • Planos de pagamento

Slide 12

Slide 12 text

Event loop (single thread) Non blocking I/O callback

Slide 13

Slide 13 text

callbacks?

Slide 14

Slide 14 text

coroutines

Slide 15

Slide 15 text

$ python Live coding

Slide 16

Slide 16 text

Muffin • Framework web sobre o aiohttp • Simples • Plugins • Testing

Slide 17

Slide 17 text

Plugins • muffin-admin • muffin-babel (l10n) • muffin-debugtoolbar • muffin-jinja2 • muffin-mongo • muffin-peewee (ORM) • muffin-redis • muffin-sentry • muffin-session • muffin-rest

Slide 18

Slide 18 text

$ python Live coding

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

uvloop • Implementação do event loop utilizando a libuv

Slide 22

Slide 22 text

Gevent

Slide 23

Slide 23 text

• Fluent Python (caps 16, 17 e 18) • Jesse Davis: How coroutines work 
 (bit.ly/asyncio_video1) • Josh Barlett: What in the world is asyncio?
 (bit.ly/asyncio_video2) • David Beazley: Topics of Interest - Python AsyncIO 
 (bit.ly/asyncio_video3)

Slide 24

Slide 24 text

Renato Pedigoni @rpedigoni luizalabs.com/vagas