Django/Flask Request Response Çalışma Döngüsü¶
Bu diyagramda bir python web uygulamasının request(istek) ve response(cevap) çalışma döngüsünü(cycle) görüyorsunuz. Gunicorn gibi WSGI Http Server'lar django, flask gibi frameworkler ile geliştirilen uygulamaları şekilde görüldüğü gibi çalıştırırlar. Diyagrama göre istek ve cevap çalışma döngüsünü inceleyelim:
-
Bir kullanıcı, web sunucusuna (Nginx) bir istek gönderir.
-
Nginx isteği alır ve bunun statik bir dosya mı yoksa dinamik bir istek mi olduğunu kontrol eder.
-
İstek statik bir dosya içinse, Nginx dosyayı doğrudan sunar.
-
Eğer talep dinamik bir request için ise, 4.b. Nginx, isteği Gunicorn'a yönlendirir.
4.c.1. Gunicorn, talebi alır ve bir çalışan(worker) süreci(process) başlatır. 4.c.2. Çalışan süreç, python (Django, Flask) uygulamasını yükler ve istenen URL için view/controller fonksiyonu çalıştırılır.
4.d. View fonksiyonu bir yanıt(response) oluşturur ve bunu Gunicorn'a döndürür. 4. e. Gunicorn, yanıtı Nginx'e geri gönderir. 4.f. Nginx yanıtı kullanıcıya geri gönderir.
Genel olarak bir python web uygulamasının çalışma akışı bu şekildedir.
Eğer bu içeriği faydalı bulduysanız email bültenimize abone olabilirsiniz.