Django Academy · Lektion

Gunicorn som WSGI-server

Servera Django med en riktig applikationsserver

Lektion 1 av 413 steg

Gunicorn som WSGI-server är en gratis lektion i Django Academy på CoddyKit. Detta är lektion 1 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Django Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Django Academy innehåller totalt 4 lektioner.

Möt Gunicorn

Djangos runserver är utmärkt under utveckling, men det körs med en tråd och är inte säkert för det offentliga internet. I produktion behöver ni en riktig applikationsserver. 🚀

Vad WSGI är

WSGI är standardkontraktet mellan en Python-webbapp och en server. Det gör att vilken server som helst kan kommunicera med Django utan att känna till dess interna implementation.

Gunicorn talar WSGI

Gunicorn är en WSGI-server för produktion som läser in er Django-app och kör den snabbt, stabilt och parallellt för många förfrågningar.

Installera det

Lägg till Gunicorn i er miljö med pip och lås sedan versionen i requirements.txt, så att varje driftsättning använder samma version.

pip install gunicorn
pip freeze > requirements.txt

Startpunkten wsgi.py

Varje projekt innehåller en wsgi.py som exponerar ett objekt med namnet application. Gunicorn importerar exakt det objektet för att leverera er webbplats.

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

Kör Gunicorn

Ange projektets wsgi-modul för gunicorn. Sökvägen med punkter motsvarar hur Python importerar modulen och avslutas med application.

gunicorn myproject.wsgi:application

Bind till en adress

Använd --bind för att välja värd och port. Om ni binder till 0.0.0.0 kan omvärlden nå servern, inte bara localhost.

gunicorn myproject.wsgi --bind 0.0.0.0:8000

Workers hanterar belastning

Varje worker är en process som hanterar förfrågningar parallellt. En vanlig utgångspunkt är två gånger antalet CPU-kärnor plus ett, och därefter justerar ni utifrån verklig trafik.

gunicorn myproject.wsgi --workers 3

Gunicorn är inte för statiska filer

Gunicorn kör er Python-kod, inte filer. Att leverera CSS och bilder är i stället ett jobb för Nginx eller WhiteNoise.

Håll det igång

En server i drift måste klara omstarter och krascher. En processhanterare som systemd startar om Gunicorn automatiskt, så att webbplatsen förblir tillgänglig.

Tidsgränser spelar roll

Flaggan --timeout avslutar workers som fastnar på långsamma förfrågningar. Standardvärdet är 30 sekunder, vilket skyddar er från att en hängande vy fryser allt.

gunicorn myproject.wsgi --timeout 60

Snabb kontroll

Vi bekräftar vad Gunicorn faktiskt levererar.

Sammanfattning

Ni har lärt er att Gunicorn är WSGI-servern för produktion som kör Django via wsgi:application, skalas med workers och lämnar statiska filer till andra komponenter. 🎯

Gratis att börja

Lär dig Python med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
30
Lektioner
120

Vanliga frågor

Är lektionen ”Gunicorn som WSGI-server” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Django Academy, inklusive ”Gunicorn som WSGI-server”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Django Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Gunicorn som WSGI-server”?

Servera Django med en riktig applikationsserver Ni övar på Django Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Django Academy?

Du behöver inga förkunskaper. Utbildningen i Django Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”Gunicorn som WSGI-server”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Django Academy-lektionen?

Ja. Varje Django Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Gunicorn som WSGI-server
  2. Nginx som reverse proxy
  3. WhiteNoise för statiska filer
  4. Miljövariabler och uppdelning av inställningar
← Tillbaka till Django Academy