[Python] web2py: lo conoscete ?

Daniele Varrazzo piro a develer.com
Ven 2 Dic 2011 16:37:34 CET


On Fri, 02 Dec 2011 16:01:50 +0100, Manlio Perillo wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Il 02/12/2011 01:54, Daniele Varrazzo ha scritto:
>> On Thu, 1 Dec 2011 22:25:09 +0100, Giorgio Zoppi wrote:
>>> che pensate di Cherrypy?
>>
>> Che sia maledetto lui e le sue variabili thread-local.
>>
>
> Anche Django non scherza.
>
> Tempo fa avevo visto come implementava il supporto a i18n per la
> traduzione dei messaggi, e sono rabbrividito...

Sì, ma almeno non hai "cherrypy.request" che "maggicamente" restituisce 
la richiesta http del thread corrente, o cherrypy.session che  
restituisce la sessione dell'utente di quel thread. Ti ci voglio a 
debuggarlo... Anche se abbiamo un REPL in ascolto su una porta interna 
per il debug live, possiamo chiamare tutte le funzioni del programma... 
ma non quelle che usano qualunque oggetto cherrypy, perché il REPL gira 
in un thread a parte.

Questo mettilo su url dispatcher inesistente (il primo segmento della 
url è la funzione invocata, gli altri argomenti posizionali).

Una porcheria totale. Ci mantengo/estendo un programma da qualche anno 
e so quello che dico (è il programma della mail di prima).

Ah, cherrypy è multithread, ma lo storage su file delle sessioni non è 
thread safe, me lo sono dovuto scrivere io. Mi chiedevo come mai 
l'autore originale del programma usasse memcached solo per salvare (si 
fa per dire le sessioni). Quando abbiamo fatto il multi-nodo, un mio 
collega ha visto lo storage delle sessioni su database (che potrebbe 
servirci se volessimo scalare su diverse macchine) e ha detto che anche 
quello è finto.

Il supporto per l'i18n di Django non lo conosco bene, ma qualunque cosa 
sia ho sicuramente visto di peggio e su concetti molto più fondamentali, 
tipo "richiama questa funzione con questa richiesta http".

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


Maggiori informazioni sulla lista Python