Hallo Freunde,
ich hab mal eine allgemeine Frage was CGI und WSGI betrifft
Würde die Definition von CGI und WGSI so korrekt sein?
CGI = Common Gateway Interface, ist eine Schnittstelle, dass ermöglicht, Webseiten Dynamisch darzustellen. Kann in jeder belieben Sprache verwenden werden, jedoch ist die Last zu hoch , da er jedes mal pro Anfrage ein Prozess startet
WSGI = Web Server interface Gateway, ist eine Schnittstelle zwischen den Webserver und das Framework, es ist eine Erweiterung von CGI, das Prozess wird nur 1x gestartet
Meine Frage zu WSGI?
Warum kann man bei wsgi keine globalen Variablen für den Sessioncontext verwenden?
Ich hoffe, ihr könnt meine Fragen beantworten
CGI und WSGI
@Sebi.Schneider: WSGI würde ich nicht als Erweiterung von CGI bezeichnen. Es ist halt eine alternative Schnittstelle zwischen einem Server und einer Webanwendung.
WSGI selbst schreibt nicht vor wieviele Prozesse, oder ob überhaupt Prozesse und nicht Threads, gestartet werden und auch nicht wie lange die jeweils laufen müssen (vom Minimum eine Anfrage komplett zu bearbeiten mal abgesehen). Man kann WSGI-Anwendungen auch mit einerm Webserver laufen lassen der nur CGI kann. Oder, üblicher, man lässt *mehrere* Prozesse für eine Anwendung laufen, damit auch mehr als eine Anfrage zur gleichen Zeit bearbeitet werden kann. Beide Varianten machen ”globale Variablen” für die Sitzung unmöglich.
WSGI selbst schreibt nicht vor wieviele Prozesse, oder ob überhaupt Prozesse und nicht Threads, gestartet werden und auch nicht wie lange die jeweils laufen müssen (vom Minimum eine Anfrage komplett zu bearbeiten mal abgesehen). Man kann WSGI-Anwendungen auch mit einerm Webserver laufen lassen der nur CGI kann. Oder, üblicher, man lässt *mehrere* Prozesse für eine Anwendung laufen, damit auch mehr als eine Anfrage zur gleichen Zeit bearbeitet werden kann. Beide Varianten machen ”globale Variablen” für die Sitzung unmöglich.
- jens
- Python-Forum Veteran
- Beiträge: 8502
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
Generell sind globale variablen möglich,wenn sie statisch sind. Z.b. die settings.py Daten bei Django sind global...
Dynamische date zwischen threads/Prozessen sind das Problem. I.d.R. könnte man diese in der DB oder im cache vorhalten...
Dynamische date zwischen threads/Prozessen sind das Problem. I.d.R. könnte man diese in der DB oder im cache vorhalten...
Als der Untertitel für das Forum Webframeworks vor einigen Monaten auf "Django, Flask, Bottle, WSGI, CGI…" geändert wurde dachte ich eigentlich es wäre den Leuten jetzt klar, wo man Fragen zu CGI und WSGI stellen sollte ....Sebi.Schneider hat geschrieben:ich hab mal eine allgemeine Frage was CGI und WSGI betrifft