[Python] web: sync vs. async

Daniele Varrazzo piro a develer.com
Lun 5 Dic 2011 15:22:17 CET


On Mon, 05 Dec 2011 12:08:25 +0100, Manlio Perillo wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Il 05/12/2011 01:11, Alessandro Dentella ha scritto:
>> [...]
>> La soluzione che hai indicato -il modulo momoko- č interessante ma 
>> se non
>> capisco male mi costringe comunque a riscrivere tutto. Come ho 
>> scritto,
>> l'applicazione al momento usa intensamente SqlAlchemy, non 
>> direttamente
>> psycopg2. Il modulo momoko prevede che uno scriva le SQL dirette, 
>> non che
>> passi da un ORM. Non mi pare [1] che Mike Bayer abbia progetti di
>> avventurarsi in una versione asincrona di SqlAlchemy.
>>
>
> Usando greenlet, dovrebbe essere possibile scrivere un engine custom 
> per
> SQLAlchemy che usa l'estensione asincrona di psycopg2.
> La cosa pių complessa č il pooling delle connessioni.
>
> Il vantaggio di greenlet (ed il motivo per cui molti ci vanno dietro) 
> č
> che non devi cambiare l'API della tua applicazione.

No, č anche pių facile di cosė: basta registrare l'hook in 
set_esit_callback in psycopg e i green thread funzionano esattamente 
come i thread normali anche in psycopg, incluso django, sqlalchemy ecc.


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


Maggiori informazioni sulla lista Python