|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Jul 2009
Messaggi: 210
|
[Python] WSGI + webframeworks
Sera a tutti,
ho intenzione di fare qualcosa con python sul web e questa volta usare WSGI. Dico "questa volta" perchè in passato realizzai un sito web con twisted + nevow. Ho letto la PEP333 (ok, lo ammetto, non tutta, ma solo le definizioni, poi mi son arrangiato col sito wiki wsgi) e sono riuscito a realizzare semplici pagine con mod_wsgi. Per ora la cosa più complessa che ho realizzato con questa tecnologia è una semplice risposta della funziona application che stampa tramite un dict tutte le variabili d'ambiente del server. Adesso però per realizzare una sorta di engine per futuri siti web ho pensato di utilizzare uno dei webframework che conosco: per ora vorrei provare con Pylons o Web2Py, ma mi sfuggono alcune cose su come questi framework interagiscano col wsgi di apache. Mi pare di capire che sia necessario un VHost in cui eseguo il server wsgi dell'applicazione? Se è così mi vengono già due dubbi: - Essendo un server python meno potente di uno in C (come emerse da una discussione sulla mailing list di python) WSGI non riuscirebbe a garantire, in questo modo, il suo pregio principale, ovvero la sua velocità, no? (dato che dipende dall'applicazione python, che rallenta) - Sarebbe molto più difficile divulgare le applicazioni python dato che avrei bisogno di uno spazio che mi permetta non solo di usare WSGI e il framework ma addirittura di creare VHost (e non sò se ad esempio su Unbit sia possibile, oppure l'unica soluzione abbordabile sia un Virtual Server). Chi sà rispondere ? Mi piacerebbe usare Python anche sul web, ma vorrei poter sfruttare a pieno i framework che usano WSGI e non essere quindi legato a mod_python (anche per una questione di portabilità - mod_python è solo per apache ed essendo una api del webserver, una reimplementazione potrebbe richiedere alcune modifiche, cosa non prevista secondo lo standard WSGI che punta anche su questo aspetto). Grazie mille!
__________________
La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.
Isaac Asimov |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Finora ho realizzato soltanto 2 applicazioni web vere e proprie (anche se rigorosamente in bianco e nero: HTML "puro" docet
![]() In genere realizzato server HTTP, sempre con apache & mod_python, ma di recente mi sono scontrato con la complessità di configurazione di apache e con le limitazioni troppo seccanti di mod_python, per cui sono passato a lighttpd come server HTTP e a web.py come framework per lo sviluppo. Li trovo decisamente più semplici, leggeri e performanti (vedi anche i casi di successo di web.py, con reddit in particolare). Non so se possono essere utili per risolvere tutti i tuoi problemi, ma ti consiglio di dargli un'occhiata.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Jul 2009
Messaggi: 210
|
Anzitutto grazie mille della risposta.
In verità ci speravo rispondessi -non ho visto altri pythoniani affermati sul forum- ![]() Anche io ho avuto alcuni problemi con la configurazione di apache ma per mia colpa, non avendo mai letto tutta la documentazione relativa. Mi piace la soluzione da te proposta, sia perchè conosco la potenza (e la leggerezza) di lighty, sia perchè guardando rapidamente alcuni snippet mi sembra un metodo congeniale a come vorrei sviluppare. Guagagna un punto in più per il fatto che nella pagina del Recommended Setup nella sezione DB prima di mysql troviamo postgres ![]() Boh, io ci provo. A 'sto punto non può che essere amore, spero fornisca un buon set di strumenti soprattutto per la gestione delle sessioni e dei cookie, è una cosa che in Python non ho mai trattato, trovando sempre i metodi belli e pronti. Grazie ancora per la risposta, buona giornata!
__________________
La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.
Isaac Asimov |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Figurati.
Comunque io sono un programmatore, e non mi posso mettere a studiare i miliardi di configurazioni di apache. Altrimenti avrei fatto il sistemista. ![]() Con lighttpd mi trovo molto meglio, e poi per lo sviluppo web.py integra già un server HTTP ed è quindi comodissimo da testare (zero config! ![]() Quanto ai cookie e alle sessioni, dal manuale online di web.py mi sembra semplicissimo gestirli.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: Jul 2009
Messaggi: 210
|
Hai perfettamente ragione.
Mi sà che per ora dovrò ripiegare sul server di sviluppo per web.py dato che lighty mi dà problemi con Vista... :s più tardi provo a sistemare tutto, ma ora son troppo curioso di toccare con mano web.py ![]() Riguardo cookie e sessioni si ho visto che per altro si basa su un sistema di sessioni salvate nel database, cosi non ci sono problemi di privilegi, questo o quello che alla fine gli SP non forniscono e mi costringerebbero a soluzioni troppo spinte per semplici siti web. Più lo guardo e più mi piace sto web.py, pensare che nella lista dei framework web del wiki di python non sono mai andato oltre la sezione "Popular Full-Stack Frameworks" e non l'avevo mai visto ![]()
__________________
La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.
Isaac Asimov |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Lo trovo molto "pythonic".
![]() Comunque occhio che con Lighttpd non funziona il FastCGI su Windows. ![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#7 | |
Member
Iscritto dal: Jul 2009
Messaggi: 210
|
![]() Quote:
![]()
__________________
La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.
Isaac Asimov |
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
|
__________________
Khelidan |
![]() |
![]() |
![]() |
#9 |
Member
Iscritto dal: Jul 2009
Messaggi: 210
|
No, non lo conoscevo.
Sembra interessante, tanto più se è parte della tecnologia di facebook -non tanto per il servizio del sito, ma per le prestazioni che richiede-. Mille grazie per la segnalazione ![]() Da una rapidissima lettura della documentazione mi pare che a differenza di web.py -oltre a quello che dice esplicitamente, dei tools e della ottimizzazione- punti appunto sul proprio webserver, per servire i contenuti, mentre data la semplicità di avvio del server di web.py, credo che quest'ultimo sia pensato per il deployment su un webserver che supporti wsgi/fcgi/cgi.
__________________
La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.
Isaac Asimov |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:16.