Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Everybody loves Benchmarks (Lightning Talk) by ...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Pycon ZA
October 12, 2018
71
0
Share
Everybody loves Benchmarks (Lightning Talk) by Nickolas Grigoriadis
A talk about Python Http client performance.
Pycon ZA
October 12, 2018
More Decks by Pycon ZA
See All by Pycon ZA
Trio: Structured Concurrency for Python by Jeremy Thurgood
pyconza
0
250
Preparing for the great snakes migration by Heather Williams
pyconza
0
100
Satellite Data and Super-Resolution to enhance a Slope Soaring Simulator by Schalk Heunis
pyconza
0
180
"Should we just go home on the third Friday afternoon?" by Kim van Wyk
pyconza
0
130
"Dolosse: Distributed Physics Data Acquisition System" by Bertram Losper & Sehlabaka Qhobosheane
pyconza
0
170
Modern JavaScript for Python Developers by Cory Zue
pyconza
0
340
Making Art with Python by Kirk Kaiser
pyconza
0
230
"Posits: A proposed new floating point number format for ML" by Kevin Colville
pyconza
0
150
"Building a label printer using Python, Arduino, duct tape and paperclips" by Johan Beyers
pyconza
0
320
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
67k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
110
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
GraphQLとの向き合い方2022年版
quramy
50
15k
A Tale of Four Properties
chriscoyier
163
24k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
740
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
[SF Ruby Conf 2025] Rails X
palkan
2
1k
It's Worth the Effort
3n
188
29k
BBQ
matthewcrist
89
10k
Transcript
1 Everybody loves Benchmarks A quick show of Python HTTP
client performance. Nickolas Grigoriadis
2 We all love Python But a common complaint is
it is slow. Especially for HTTP requests.
3 Common mistakes Create a new “session” for each request:
requests.get(...) Instead do: session = requests.session() # Now re-use session session.get(...)
4 Benchmarks • Done on my old i5-630u notebook. •
Single process. • Against Apache (because I could turn HTTP/1.1 pipelining on/off) • Inside an Alpine-linux Docker container. https://github.com/vibora-io/benchmarks/pull/5
5 Benchmarks! - sync requests requests (opt) urllib3 urllib3 (opt)
PyCurl PyCurl (opt) 0 2000 4000 6000 8000 10000 12000 HTTP/1.0 — 1 HTTP/1.1 — 1
6 Benchmarks! - async aioHTTP aioHTTP (opt) aioHTTP (+uvloop) tornado.simple
tornado.simple (+uvloop) tornado.curl tornado.curl (+uvloop) vibora.client 0 500 1000 1500 2000 2500 3000 3500 4000 4500 HTTP/1.0 — 1 HTTP/1.1 — 1 HTTP/1.0 — 10 HTTP/1.1 — 10