[pyar] Sobre Twisted Matrix

Milton Labanda 1000ton.lab en gmail.com
Lun Ago 13 12:00:00 ART 2012


Muchas gracias de nuevo, no tomamos mucho en cuenta esos casos en detalle,
por ahora nos interesa lo mas general porque nos urge la relacion
SGA-Moodle que ya mismo empiezan clases je je.

Respecto cosas  de los  mensajes anteriores:
1-  Las BD están en servidores  diferentes
2-  Las BD son Postgres unas  y MySQL otras
3-  En un inicio pensé usar Pg_Q pero por (1) y (2) ya no puedo ni pensar
en esa alternativa.

El 13 de agosto de 2012 09:26, Angel Java Lopez <ajlopez2000 en gmail.com>escribió:

> Algo mas.... no se si tomaron en cuenta casos como:
>
> 1- Sistema Academico A da de alta estudiante, pero Moodle necesita MAS
> datos que los que da el sistema A, para dar de alta el estudiante.
> 2- Sistema Academico A da de alta estudiante, pero por que cargar eso en
> A, si Moodle ya tiene el estudiante dado de alta
> 3- En el caso que A de de alta estudiante, y Moodle encuentre que ya
> existe, pero tiene otros (otro domicilio), que hacer?
>
> Es decir, temas de "que es alta?" vs "esa alta en A ya estaba en B", y
> como se resuelven los conflictos.
>
> El caso 2, daria para que el sistema A tal vez tenga que acceder a B
> (Moodle) para obtener datos de un estudiante YA EXISTENTE en B, pero que no
> se conoce en A (es la primera vez que el estudiante aparece en el sistema
> A).
>
> Hace unos meses, en una reunion presencial de agiles buenos aires, se
> planteo un software architecture kata parecido:
> http://www.architecturalkatas.com/kata.html?kata=ECollege.json
>
> ver http://www.architecturalkatas.com/
>
>
> 2012/8/13 Angel Java Lopez <ajlopez2000 en gmail.com>
>
>> Hola gente!
>>
>> Interesante tema, Milton... Bien, apenas sabiendo Python, igual me atrevo
>> a comentar algo por aca.
>>
>> Yo propondria:
>> - Sistema A publica eventos (tipo: cambio tal dato en el Estudiante X;
>> nuevo docente Y con tales datos; etc...)
>> - Sistema B1 (algo a escribir) se subscribe a algunos de esos eventos
>> (por ejemplo, tal vez B1 no le interesen los cambios de Asignatura, pero si
>> le interesen los de Estudiantes y Docentes)
>> - Sistema C1 (algo a escribir) idem..
>> - Y asi Sistema D1, E1 y los que vengan
>>
>> El Sistema B1 (digamos que B es Moodle), al  leer los eventos (en un
>> servidor dedicado para eso, corriendo siempre, o solo a la noche, etc.),
>> toma los datos del evento, y los aplica al sistema B (el Moodle,
>> posiblemente a su base de datos).
>> Lo mismo el sistem C1, D1, E1 y los que vengan
>>
>> Que usar para este esquema de publicar/subscribir?
>> Jeje... no se, miraria Redis, RabbitMQ, etc.
>> Ver quizas
>> http://stackoverflow.com/questions/115844/recommended-python-publish-subscribe-dispatch-module
>>
>> El esquema propuesto tiene pros y contras:
>> - Contra? Puede ser mas "grande" que otras soluciones directas, como
>> actualizar Moodle directamente
>> - Pros? Te permite desacoplar los sistemas. El sistema A solo tiene que
>> "aprender" a publicar eventos. El resto del sistema A no se toca.
>> Generalmente, la publicacion de eventos se basa en sistemas que siguen
>> funcionando aun cuando los B1, C1, D1... no esten en linea. Tambien A
>> podria publicar eventos en una cola, si es que el "broker" de esos eventos
>> (el que los recibe y se encarga de dejarlos disponibles a los sistemas
>> subscriptores), no esta en algun momento accesible desde el sistema A.
>> Permite incoporar a G1 (un nuevo subsistema subscriptor de eventos) en
>> cualquier momento, sin tener que cambiar A, o B1, o C1, etc... Permite
>> cambiar B1 cuando cambien B (por ejemplo, version de Moodle cambia, cambia
>> la base, solo hay que tocar B1, lo demas sigue andando). Los temas de
>> seguridad de acceso a las bases de datos de B, C, D... se delegan en B1,
>> C1, D1... y nunca le pueden "hechar la culpa" al programador de A de
>> arruinar algo, etc...
>>
>> Pero todo depende de tu contexto. Puede que lo propuesto sea lo mas
>> conveniente ahora, o puede que sea lo mas conveniente a futuro, mediano
>> plazo, o que me digas: no, realmente no podemos implementarlo.
>>
>> Tuve un caso parecido (que no se llego a implementar): un sistema A daba
>> de altas, modificaciones en pozos petroleros (un pozo tiene mas de una
>> perforacion, incluso hay perforaciones que no son verticales ,etc..). Habia
>> distintos sistemas que debian enterarse de eso: recursos humanos,
>> seguridad, SCADA con herramientas, etc....  Sin un sistema asi (pub/sub),
>> uno termina en la "swivel chair solution": un tipo que se sienta, en una
>> pantalla ve lo que cambio de A, da vuelta su silla rotatoria, y en otra
>> pantalla carga los datos en el sistema B... ;-)
>>
>> Nos leemos!
>>
>> Angel "Java" Lopez
>> http://www.ajlopez.com
>> http://twitter.com/ajlopez
>>
>>
>> 2012/8/13 Milton Labanda <1000ton.lab en gmail.com>
>>
>>> Muchas gracias Emiliano y disculpa la verdad que si me faltó aclarar:
>>> La sincronización que quiero hacer es: Cuando se produscan  eventos CRUD
>>> en el sistema Aacademico (A) (principalmente en Estudiantes, Docentes y
>>> Asignaturas) se produscan las actualizaciones respectivas en los otros
>>> sistemas (Moodle (B), Encuestas (C) y los que vengan)
>>>
>>> El 13 de agosto de 2012 08:41, Emiliano Dalla Verde Marcozzi <
>>> edvm en fedoraproject.org> escribió:
>>>
>>> El día 13 de agosto de 2012 10:34, Milton Labanda
>>>> <1000ton.lab en gmail.com> escribió:
>>>> > Hola amigos, me recomendarían usar Twisted en el siguiente escenario,
>>>> o
>>>> > alguna otra alternativa:
>>>> > En una universidad tenemos un Sistema Académico en Python
>>>> (TurboGears) a
>>>> > partir del cual queremos sincronizar  otros sistemas tales como:
>>>> Moodle (PHP
>>>> > logicamente), Un sistema de encuestas (Django) y otros que vendrán
>>>> > psiblemente hechos en python o java.
>>>> >
>>>> >
>>>> > /\/\;/-----------------------------------------------------
>>>> > Milton  Labanda  [miltonlab]
>>>> > Distro:        Debian GNU/Linux 6.0 Squeeze
>>>> > Blog:          http://1000tonlab.wordpress.com
>>>> > jabber:        miltonlab en jabber.org
>>>> > "... Solamente la libertad que se somete a la Verdad conduce a la
>>>> persona
>>>> > humana a su  verdadero bien...".  Karol Wojtyla
>>>> > (:\ Usa Software Legal, usa Software Libre /:)
>>>> >
>>>> >
>>>>
>>>> Buen día Milton,
>>>> Podrías aclarar un poco más como es el tema de sincronizar los datos
>>>> entre todos
>>>> esos sistemas ? :-) Te pregunto esto, porque Twisted está muy bueno, me
>>>> gusta
>>>> mucho para escribir servidores y clientes no bloqueantes (entre otras
>>>> muchas cosas),
>>>> pero no entiendo muy bien como es esto de que queres sincronizar los
>>>> datos ...
>>>> Por ejemplo, sean tus sistemas:
>>>> A, B, C, D
>>>> Esperas que al agregar un dato en A, pueda ser visto en B? Quizá con
>>>> 'compartir' las bases
>>>> de datos entre tus apps sea suficiente ? :-)
>>>> Saludos,
>>>>
>>>> --
>>>> "Code without tests is broken by design." - Jacob Kaplan-Moss
>>>> Show me the mone ... code!: https://bitbucket.org/edvm
>>>> _______________________________________________
>>>> 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
>>>>
>>>
>>>
>>>
>>> --
>>> /\/\;/-----------------------------------------------------
>>> Milton  Labanda  [miltonlab]
>>> Distro:        Debian GNU/Linux 6.0 Squeeze
>>> Blog:          http://1000tonlab.wordpress.com
>>> jabber:        miltonlab en jabber.org <milotnlab en jabber.org>
>>> "... Solamente la libertad que se somete a la Verdad conduce a la
>>> persona humana a su  verdadero bien...".  Karol Wojtyla
>>> (:\ Usa Software Legal, usa Software Libre /:)
>>>
>>>
>>> _______________________________________________
>>> 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
>>>
>>
>>
>
> _______________________________________________
> 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
>



-- 
/\/\;/-----------------------------------------------------
Milton  Labanda  [miltonlab]
Distro:        Debian GNU/Linux 6.0 Squeeze
Blog:          http://1000tonlab.wordpress.com
jabber:        miltonlab en jabber.org <milotnlab en jabber.org>
"... Solamente la libertad que se somete a la Verdad conduce a la persona
humana a su  verdadero bien...".  Karol Wojtyla
(:\ Usa Software Legal, usa Software Libre /:)
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20120813/c905e7d1/attachment.html>


More information about the pyar mailing list