2019-09-15 –, Ferrier Hall
When googling "python micro-service framework", there are plenty of "Hello world" examples out there for many (micro-)frameworks.
But how do they scale in the "real" world? How can I connect framework X to a database or what do you need to do to use OAuth2 with framework Y?
This talk was inspired by Aaron Bassett's EuroPython 2018 talk "Hello to the World in 8 Web Frameworks micro, batteries included & async". It was a great introduction to the array of web (micro-)frameworks available in Python but I was curious at how they scale to "real" life use-cases.
In order to learn about that, I went through several steps:
- I decided on 4 micro-services I wanted to build and that were somewhat representative of services you might need in a production setting
- I set some constraints about what I expect from a micro-service as a developer (ie: documentation, testing, etc), as a sysadmin (ie: ease of deployment) and as a product manager (ie: performance)
- I implemented those micro-services using several frameworks
- I deployed them with production settings on a Raspberry Pi cluster
- I tested the performance of each architecture
This talk is an overview of the process, what guided my decisions, the things I learned and what conclusions I reached. Oh and of course performance graphs and statistics ;)
Spoiler: I will not end the talk with "choose framework Z"
Long-time pythonista, Django fan, co-maintainer and co-author of DRF-Schema-Adapter. Recently interested by Python running on different hardware.
I am from Belgium and have been involved in open-source at different levels for a bit more than a decade now.
One of the things I enjoy the most is sharing knowledge with others. And this is why I enjoy writing tutorials as well as giving talks and workshops.