Flask Academy · Lektion

Varför du inte ska använda den inbyggda utvecklingsservern

Produktion kräver en riktig WSGI-server.

Lektion 1 av 413 steg

Varför du inte ska använda den inbyggda utvecklingsservern är en gratis lektion i Flask Academy på CoddyKit. Detta är lektion 1 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Flask Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Flask Academy innehåller totalt 4 lektioner.

Servern som tog er hit

När ni körde flask run startade Flask en liten inbyggd server. Den var perfekt för inlärning, men var aldrig avsedd att möta riktiga användare. 🚦

Den säger det själv

Observera varningen som Flask skriver ut vid uppstart. Den säger bokstavligen att detta är en utvecklingsserver och inte avsedd för produktionstrafik.

WARNING: This is a development server.
Do not use it in a production deployment.

Ett anrop i taget

Som standard är utvecklingsservern till stor del entrådad. Ett långsamt anrop kan få alla andra besökare att sitta och vänta på sin tur.

Ingen riktig samtidighet

Riktiga webbplatser hanterar många användare samtidigt. Utvecklingsservern har ingen ordentlig modell med workers för att fördela belastningen över processorkärnorna.

Inte byggd för skadlig indata

Utvecklingsservern är inte härdad för det öppna internet. Dess svaga säkerhet gör den till ett enkelt mål för felaktiga eller skadliga anrop.

Den kraschar med besked

I felsökningsläge kan ett fel skriva ut ett fullständigt stackspår direkt i webbläsaren. Praktiskt för er, men en gåva till angripare i produktion.

WSGI gör entré

Python-webbappar kommunicerar med servrar genom ett kontrakt som kallas WSGI. Flask stöder det, så alla kompatibla servrar kan köra er app.

Vad en riktig server tillför

En produktions-WSGI-server har flera workers, startar om efter krascher och använder anpassade tidsgränser. Den är byggd för att vara tillgänglig under hög belastning.

Er app ändras knappt

Den goda nyheten är att era vyer förblir likadana. Ni pekar bara en produktionsserver på ert app object i stället för att anropa flask run.

# wsgi.py
from myapp import app  # the WSGI callable

Möt Gunicorn-planen

Under resten av kursen kommer Ni att köra Flask med Gunicorn, en välbeprövad WSGI-server, och sedan kapsla in den i Docker.

Utvecklingsservern har fortfarande en uppgift

Detta innebär inte att Ni ska ta bort flask run. Fortsätt använda utvecklingsservern lokalt för dess omedelbara omladdning och lättförståeliga felmeddelanden.

Snabb kontroll

Varför bör Ni undvika den inbyggda servern i produktion?

Sammanfattning

Utvecklingsservern är till för att lära sig, inte för att lansera. I produktion lämnar Ni över er WSGI-app till en riktig server som Gunicorn. Härnäst gör Ni precis det. 🚀

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 ”Varför du inte ska använda den inbyggda utvecklingsservern” gratis?

Ja – hela texten till ”Varför du inte ska använda den inbyggda utvecklingsservern” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Flask Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i Flask Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Varför du inte ska använda den inbyggda utvecklingsservern”?

Produktion kräver en riktig WSGI-server. Ni övar på Flask 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 Flask Academy?

Du behöver inga förkunskaper. Utbildningen i Flask 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 ”Varför du inte ska använda den inbyggda utvecklingsservern”?

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 Flask Academy-lektionen?

Ja. Varje Flask 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. Varför du inte ska använda den inbyggda utvecklingsservern
  2. Kör Flask med Gunicorn
  3. Skriv en Dockerfile för produktion
  4. Lägg Nginx och Compose framför appen
← Tillbaka till Flask Academy