<blockquote style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;" class="gmail_quote">Node e` un server asincrono, lato cliente ci metti un qualsiasi client<br>
che parla quel protocollo. Se giri in HTTP un browser e un po&#39; di<br>
JavaScript vanno benissimo :D Il client della chat demo che c&#39;e` sul<br>
sito e` scritto in JavaScript con l&#39;ausilio di jQuery:<br><a href="http://github.com/ry/node_chat/blob/master/client.js" target="_blank">http://github.com/ry/node_chat/blob/master/client.js</a><br></blockquote><div>Capito. Da una prima occhiata al sito pensavo fosse qualche nuova diavoleria per interagire con un webserver asincrono :). Grazie per la spiegazione. <br>
</div><blockquote style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;" class="gmail_quote">
Ciao!<br></blockquote>

Ciao e buona serata!<br><br><div class="gmail_quote">Il giorno 22 gennaio 2010 14.09, Manlio Perillo <span dir="ltr">&lt;<a href="mailto:manlio.perillo@gmail.com">manlio.perillo@gmail.com</a>&gt;</span> ha scritto:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im">-----BEGIN PGP SIGNED MESSAGE-----<br>
Hash: SHA1<br></div><div class="im">
<br>
</div>Al momento non ricordo, cerca nella mailing list di psycopg. </blockquote><div>Fatto. Ho trovato vari messaggi sul core asincrono e ho iniziato a scovare qualche report di bug e vari, cercherò di raccogliere qualche info specifica. <br>
</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im">
&gt;     &gt; Altrimenti, se ho scritto una app in python che non è basata su<br>
&gt;     twisted<br>
&gt;     &gt; ma volessi usare una delle sue interfacce asincrone per la connessione<br>
&gt;     &gt; ai db avrei qualche problema?<br>
&gt;<br>
&gt;     Probabilmente si.<br>
&gt;<br>
&gt; Allora l&#39;unica soluzione credo sia testarle, magari con una semplice app<br>
&gt; wsgi su un webserver asincrono.<br>
&gt;<br>
<br>
</div>Io per Twisted ho implementato un client in puro Python per PostgreSQL:<br>
<a href="http://hg.mperillo.ath.cx/twisted/pglib/" target="_blank">http://hg.mperillo.ath.cx/twisted/pglib/</a><br>
<br>
Ma non l&#39;ho mai usato in produzione.<br><div class="im"></div></blockquote><div>Uhm. Adesso il webserver del link sopra mi restituisce un 504, appena torna disponibile il servizio darò una occhiata con gran piacere :) <br>
</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Non dovrebbe.<br>
L&#39;importante è che tu abbia un solo main loop per thread/processo.<br></blockquote><div>Chiaro, beh questo allora potrebbe essere interessante. Si ovviamente il main loop è uno solo attraverso cui passa tutto ciò che deve aspettare un evento. <br>
</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
No, è documentato da un altra parte:<br>
<a href="http://www.postgresql.org/docs/8.4/static/libpq-status.html" target="_blank">http://www.postgresql.org/docs/8.4/static/libpq-status.html</a><br>
`PQsocket`.<br></blockquote><div>Ecco allora, la cosa si fà più chiara, ti ringrazio per la segnalazione, darò una occhiata in questi giorni all&#39;intera doc delle libpq, è veramente interessante sotto quest&#39;aspetto. <br>
</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im">

</div>Per applicazioni e database decenti, le query non ci mettono molto ad<br>
essere eseguite.<br>
Ed il database è comunque sullo stesso server o sulla stessa LAN.<br></blockquote><div>Beh meno male che è cosi, comunque supponiamo di avere il webserver asincrono e una applicazione ben progettata, è un vero peccato che il collo di bottiglia possa diventare proprio quello che è (nella maggioranza dei casi) il cuore dell&#39;applicazione stessa -o forse è meglio dire il &quot;cervello&quot;- <br>
</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Questo tipo di latenze si possono risolvere utilizzando un server che<br>
usi più di un processo per servire le richieste HTTP.<br><div class="im"></div></blockquote><div class="im">Questo è però più un metodo per tamponare il problema che per risolverlo. Lasciamo un attimo da parte infatti i tempi brevi o non della connessione al db, ma se io lancio 15 processi di un webserver e poi ho più richieste del numero di processi in esecuzione semplicemente siam punto e a capo (supponiamo un numero di gran lunga maggiore ai 15 processi).<br>
In proposito sul web si trova qualche discussione -anche se breve- e particolarmente mi viene in mente quella dello sviluppatore di un ws asincrono e di uno sviluppatore web python, quando quest&#39;ultimo ha appunto detto che il numero consecutivo di processi non è una soluzione lo sviluppatore del ws non ha più risposto :s<br>

</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Di nulla, ciao.<br><div class="im"></div></blockquote><div>Ciao e buona serata :) <br>

</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div><div></div><div class="h5">_______________________________________________<br>
Python mailing list<br>
<a href="mailto:Python@lists.python.it">Python@lists.python.it</a><br>
<a href="http://lists.python.it/mailman/listinfo/python" target="_blank">http://lists.python.it/mailman/listinfo/python</a><br>
</div></div></blockquote></div>-- <br>Alessandro A.<br>