On Fri, 02 Dec 2011 22:53:17 +0100, Manlio Perillo wrote:

Usando thread o processi?
Che tipo di hardware e che web server (nel caso di applicazioni web)?
Quante connessioni concorrenti?

Infine una curiosità: assumendo che sia il vecchio che il nuovo
application server offrano WSGI e che nel nuovo usi greenlet, quanto
impegno ha preso la riscrittura dell'applicazione?

No, l'assunzione è sbagliata. I nostri programmi non sempre sono classici programmi web, non abbiamo il tipico "tanti client web da far scalare". La concorrenza ce l'abbiamo su problemi da risolvere contemporaneamente in un ambiente event-driven: non c'è wsgi di mezzo. Una nostra architettura "tipica" potrebbe essere un controller scritto in eventlet e uno sfacelo di slave esterni, ognuno in un processo. Il controller è una delle tipiche cose scritte originalmente con i thread e che oltre i 15-20 slave trova un muro.


Splittarlo su N processi fissi: quindi mi aspetto che Apache + mod_wsgi
con N processi worker non abbia troppi problemi.

Magari mi aspetto troppo da Apache, ma se la tua soluzione funziona e
Apache no, significa che mi sono perso qualcosa.

Il problema non è apache, quello ha ben poco da fare. Il problema è solo fare concorrenza con python, per la qual cosa i thread non vanno bene, indipendentemente da wsgi che ci metti in mezzo, che è solo un protocollo.


--
Daniele Varrazzo - Develer S.r.l.
http://www.develer.com

_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a