[Python] django e strutture dati permanenti

Roberto De Ioris roberto a unbit.it
Gio 11 Ott 2012 10:52:07 CEST


> idee? :)
>

Guarda, e' un problema risolvibile abbastanza semplicemente con uWSGI.

Fondamentalmente

1) carichi python
2) carichi il modulo con il grafo
3) fork() n volte
4) carichi l'applicazione in ogni 'worker'

quando fai modifiche al codice riavvii solo i worker che ripartiranno
dal punto 3 (quindi con gia' il grafo in memoria).

Ovviamente funziona in sola lettura.

Una configurazione per lo sviluppo (con 8 processi) potrebbe essere:

[uwsgi]
http = :8080
shared-import = modulografo.py
module = yourapp.wsgi
processes = 8
master = true
py-auto-reload = 2
lazy = true

i parametri chiave sono shared-import che importa un modulo prima di fork()
e lazy che carica l'applicazione in ogni worker a quando il codice cambia
vengono riavviati solo i worker anziche' tutto lo stack.

Se non conosci il progetto probabilmente il tutto ti risultera' criptico,
purtroppo non posso essere piu' prolisso perche' sono all'italian perl
workshop e non voglio farmi beccare a pythoneggiare ;)

In caso mandami una mail in privato

-- 
Roberto De Ioris
http://unbit.it


Maggiori informazioni sulla lista Python