[pyar] Presentación y consulta (Sockets -> envío de datos )
nicopixel
nicopixel en gmail.com
Lun Mayo 20 10:11:21 ART 2013
Angel, gracias por los links! voy a leer sobre ese modelo.
Roberto, lo que sucede es que los "colectores" guardan la informacion
constantemente
con shelv, sqlite o lo que sea y a la vez hay otro hilo leyendo esos datos
uno a uno, enviandolos
y eliminandolos. Así es mas o menos como pensé la cola, siempre van
agarrando el dato
mas antiguo, lo envia y lo elimina. Quizas deba ver el tema del bloqueo
pero me cuesta pensarlo porque:
a) El producer y el consumer son hilos diferentes. Si bloqueo el producer
para que el consumer
pueda borrar los datos ya procesados entonces... que hago con los datos que
en ese momento
recibe el producer y no puede persistirlos?
b) Deberia generar una comunicación entre hilos
Con respecto a BDB, voy a investigarlo. No necesito mucho, simplemente
persistir los datos
que llegan para poder procesarlos y eliminarlos.
Les agradezco mucho, me estoy nutriendo de su conocimiento.
Cuando llegue a "algo", lo publicaré :)
El 20 de mayo de 2013 09:52, Roberto Alsina
<ralsina en netmanagers.com.ar>escribió:
> On 20/05/13 09:43, nicopixel wrote:
>
> Sigo intentando resolver esto pero me topé con más inconvenientes:
>
> Tengo 2 threads (colectores) encargados de conectarse a servidores y
> recibir datos
> de distintos lugares. Luego éste es el encargado de almacenar la
> información
> en una cola para que venga un tercer hilo (sender) que envie la
> información de la
> cola y la vaya vaciando.
>
> Problema:
>
> 1- Intenté hacerlo con una base sqlite, la idea era genial pero no soporta
> acceso concurrente de lectura y escritura
>
>
> Para eso tenés una cola, no? Estás serializando, así que no necesitás
> concurrencia.
> Por otro lado, en el problema que planteás no mencionás lectura, así que
> obviamente falta algo :-)
>
> Por *otro* lado: http://www.sqlite.org/lockingv3.html
>
> Por OTRO lado: normalmente deberías bloquear muy poco tiempo, realmente
> bloquear una milésima de segundo en el hilo que accede a la base de datos
> te jode?
>
>
> 2- Intenté hacerlo con shelve pero sucede lo mismo que con sqlite
>
> ¿Que otra alternativa podría usar?
>
> Quisiera prescindir de utilizar servidores de bases de datos o de MQ's
>
>
> O sea, querés algo que se comporte como una base de datos cliente/servidor
> pero no sea una base de datos cliente/servidor :-)
>
> Dependiendo de qué necesites aparte de concurrencia... BDB soporta
> concurrencia.
>
> http://docs.python.org/2/library/bsddb.html
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20130520/f74e806b/attachment.html>
More information about the pyar
mailing list