2024-04-24 –, B07-B08
A standard Django project involves working with multiple files and folders from the start. Let's see how the work with a Django project changes when we have only one file. This solution automatically transforms Django into a microservice-oriented async framework with "batteries included” philosophy.
The history of the lightweight Django project isn't new.
The first time single-py-file Django project paradigm appears in 2014 in book Lightweight Django.
I with Django project consisting of only 2 files in 2015. At that time, the tiny Django project wasn't comparable to the capabilities of projects based on FASTAPI or FLASK.
But a couple of years later, Django introduced ASGI, and in 2022, Django was ready for use in microservices.
The concept of creating micro-projects on Django reappeared within the Django community in 2019 and again in the spring of 2023, and now we have a full-fledged technology for creating asynchronous microservices consisting of one or two files. It was named uDjango.
In this talk, I will share my experience in creating high-performance microservices on Django and how i can keep simplicity and minimalism in projects.
During the talk, I'll discuss the advantages of Django microservices:
- All-in-one package
- Standard architecture and syntax
- Extremely rapid development and deployment speed
After years of work with uDjango paradigm, I have identified the challenges in creating Django microservices:
- The prevailing opinion that the 'Django framework isn't suitable for microservices'
- Django settings.py - cause of many problems.
- URL routing in Django that could be stricter
- Initialization time of forms and model objects reduces performance
The result of this Talk for the audience will be knowlege about mDjango, a ready-to-use technology for building synchronous and asynchronous microservices.
Talk Based on ideas of:
Julia Elman and Mark Lavin, Lightweight Django 2014.
Will Vincent, django-microframework 2019.
Kirill Klenov, python benchmark repository, 2019.
Carlton Gibson, linked in post about one app Django project, 2022
Paolo Melchiore 2023, uDjango
Novice
Expected audience expertise: Python:Novice
Abstract as a tweet (X) or toot (Mastodon):Django - the new trend in creating asynchronous Python microservices.
Public link to supporting material, e.g. videos, Github, etc.:https://bitbucket.org/danilovmy/conferences2024/src/master/pyconde2024/
Python/Django Senior Software Engineer, Solution Architect and Tech Speaker.
I began my career as a programmer specializing in embedded solutions in 1997, and grow to the role of Chief Technology Officer in 2023. Through many successful projects, I gained a robust understanding of various software development paradigms. After more than 10 years as a code mentor, I finally earned the title 'Super Mentor in Engineering' in December 2023.