WSGI-Mittler + multithreaded App

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
maxwell
User
Beiträge: 69
Registriert: Samstag 11. Juli 2009, 15:36
Wohnort: am Fernsehturm in B.

Hallo Forum,

ich habe mir eine kleine E-Mail Applikation für die Shell erstellt.
Im prinzip nichts weltbewegendes und die Funktion ist relative einfach.
Über mehrere Threads werden die unterschiedl. Account abgefackelt und die Ergebnisse ausgegeben.

Nun möchte ich jedoch die Application auch von außen über ein Web Interface zugänglich machen. WSGI ist mir von der Konzeption her bekannt. Frage ist nur ob die WSGI-Applikation auch weitere Threads erstellen kann/darf?

Viele Grüße,

Chris
be or not to be
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

maxwell hat geschrieben:Frage ist nur ob die WSGI-Applikation auch weitere Threads erstellen kann/darf?
Hallo Chris!

Ich kann jetzt nur von CherryPy (http://cherrypy.org/) und mod_wsgi (http://code.google.com/p/modwsgi/) in Verbindung mit dem Apachen schreiben. Heute konnte ich recht gut mitverfolgen, dass der Apache die WSGI-Anwendung (CherryPY) mehrfach startet und offen hält. Ich glaube, acht oder neun mal.

Es sollte kein Problem sein, innerhalb der WSGI-Anwendung, auch noch eigene Threads zu erstellen. Allerdings musst du dich darum kümmern, dass das Ganze sinnvoll zusammenarbeitet. Der Apache kann die gestarteten WSGI-Anwendungen jederzeit wieder stoppen. Und die Rückgabe der angefragten Funktion, muss im Auge behalten, welche Threads noch laufen. Wenn der Apache die Anwendung stoppt, dann sollte kein Thread weiterlaufen.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
maxwell
User
Beiträge: 69
Registriert: Samstag 11. Juli 2009, 15:36
Wohnort: am Fernsehturm in B.

hallo gerold,

erstmal danke für die info.
Der Apache kann die gestarteten WSGI-Anwendungen jederzeit wieder stoppen.
ich glaube das kann man irgendwo einstellen.
Ich dachte ja bei meiner lösung an den apache und mod_wsgi.
Man könnte alternativ auch den CherryPyWSGIServer nehmen.

Ich werde das thema jetzt treiben. mal sehen was passiert soll ja nur für mich sein.

vg, chris
be or not to be
Antworten