[patrones] Observer Pattern Remoto
Hola gente! Me alegro, Leandro, que te haya interesado… Una aclaracion: no tiene nada que ver con Biztalk, con el Biztalk que conocemos como producto. Por alguna razón lo llamaron asi a Biztalk Service (algún genio del marketing… J), pero creo que le van a cambiar el nombre, algo bajo el paraguas del proyecto con nombre clave Zurich. Pero aparte del nombre, no usa nada de Biztalk de tu lado. Del lado del servidor de Microsoft, usa nuevas tecnologías, no vi que estuviera el producto Biztalk involucrado. Desconozco el tema precios, cuando sea liberado, como se va a ofrecer, o si ya hay una lista de precios, si va a ser como los servicios de Amazon, mi desconocimiento en el tema es total. Lo mismo de Biztalk Services, lo “taguie” como zurich: <http://delicious.com/ajlopez/zurich> http://delicious.com/ajlopez/zurich Una explicación de hacia donde apunta Zurich, Ray Ozzie, y las movidas que vienen en: Ozzie foreshadows ‘Zurich,’ Microsoft’s elastic cloud <http://blogs.zdnet.com/microsoft/?p=1503> http://blogs.zdnet.com/microsoft/?p=1503 Nos leemos! Angel “Java” Lopez http://www.ajlopez.com/ From: patrones@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of Leandro Tuttini Sent: Friday, September 05, 2008 12:27 PM To: patrones List Member Subject: [patrones] Observer Pattern Remoto
[patrones] Observer Pattern Remoto
Hola, gracias a todos por aportar al tema, por lo que veo es mas amplio de lo que pense, sabia que podia tenes mas de una solucion pero no pense que podia ser un tema tan amplio. Angel, esta mas que interesante el tema que proporcionas sobre ISB, la unica macana es que esta implementado sobre Biztalk, si ubiera sido sobre una plataforma mas libre seria mucho mejor. No tengo nada contra BizTalk me parece un producto increible, pero el tema es que no siempre se puede implementar por un tema de costos, no todos los clientes quieren que en las soluciones se incluya un producto que encarezca el proyecto. Salvo que en esto me este equivocando y Biztalk tenga algun parte libre que se pueda utilizar para implementar ISB, como es en Sharepoint, en donde WSS se puede utilizar mientas que MOSS ya hay que pagarlo. Sobre el tema yo habia visto hace un tiempo este otro punto (ESB) http://www.codeplex.com/KeystrokeEsbNet Pero este esta mas orientado a un Bus de Servicio que se encuentra dentro de la red, no apunta a llevarlo a Internet. Me encanto el ejemplo sobre File Shared, esta muy util. Alguien sabe en que quedo tecnologia como IIOP (Internet Inter-Orb Protocol) http://en.wikipedia.org/wiki/IIOP http://iiop-net.sourceforge.net/ Pareciar estar muy util, los servicios web lo reemplazaron ? --- El jue 4-sep-08, Angel "Java" Lopez <[EMAIL PROTECTED]> escribió: De: Angel "Java" Lopez <[EMAIL PROTECTED]>Asunto: [patrones] Observer Pattern RemotoPara: "patrones List Member" Fecha: jueves, 4 de septiembre de 2008, 7:18 pm Hola gente! Creo que el tema da para mas que el requerimiento original. Vean por ejemplo: http://msdn.microsoft.com/en-us/magazine/cc546613.aspx Y el ejemplo: http://blogs.microsoft.co.il/blogs/sasha/archive/2008/07/07/pragmatic-biztalk-services-file-sharing-service.aspx Nos leemos! Angel “Java” Lopez http://www.ajlopez.com/ From: patrones@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of Leandro TuttiniSent: Thursday, September 04, 2008 3:37 PMTo: patrones List MemberSubject: [patrones] Observer Pattern Remoto Yahoo! CocinaRecetas prácticas y comida saludable Visitá http://ar.mujer.yahoo.com/cocina/
[patrones] Observer Pattern Remoto
Hola gente! Creo que el tema da para mas que el requerimiento original. Vean por ejemplo: http://msdn.microsoft.com/en-us/magazine/cc546613.aspx Y el ejemplo: http://blogs.microsoft.co.il/blogs/sasha/archive/2008/07/07/pragmatic-biztalk-services-file-sharing-service.aspx Nos leemos! Angel “Java” Lopez http://www.ajlopez.com/ From: patrones@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of Leandro Tuttini Sent: Thursday, September 04, 2008 3:37 PM To: patrones List Member Subject: [patrones] Observer Pattern Remoto <><>
[patrones] Observer Pattern Remoto
Hola Leandro... Tenes que usar un binding que acepte canales Duplex (obviamente), como * netTcpBinding* o *wsDualHttpBinding.* El dúplex sobre TCP mediante la conexión bidireccional en cambio por HTTP se logra mediante una devolución de llamada a una escucha de cliente. Los clientes dúplex deben especificar una dirección base de cliente por que con HTTP, puede pasar que el cliente no sepa su ruta de regreso..entonces, podes utilizar una configuración personalizada para declarar una dirección *clientBaseAddress* alternativa. <*wsDualHttpBinding*> http://localhost:8000/Services/ClientCallback"/> Saludos. Pablo El 4 de septiembre de 2008 13:22, Leandro Tuttini < [EMAIL PROTECTED]> escribió: > > Mil gracias a todos por las respuestas. > > Coincido que hay mil variedades de encontrarle una solucion al problema que > planteo, desde exponer el servicio web desde el cliente para que lo llame el > servidor, pasando por usar una VPN, etc. > > Pero estaba buscando una solucion que no requiera tanta configuracion algo > que se instale como el servicio de windows, por ejemplo, y ya quede > funcionando en el cliente; por eso lo de exponer servicio, abrir puertos y > demas cosas queria dejarlas como ultima alternativa. > > Por esta razon plantee lo de usar algo parecido a "Comet", el cual es una > tecnologia que usar por ejemplo Google desde su chatear en gmail, > manteniendo una conexion al servidor desde el browser. > Y nada tiene que instalar nada solo entra a gmail y listo ya tiene el chat. > > Pablo, me gusto lo del canal Duplex, pero sino tengo mal entendido solo > puede ser usado en una intranet y con serializacion binaria, por ahi este > equivocado, si es asi, seria la solucion perfecta. > La conexion duplex de wcf puede mantenerse con conexiones a traves de > internet ? > Tendrian algun ejemplo de implementacion. > > Otra alternativa que estaba pensando era usar algun framework de P2P, se > que por ahi esto esta mas orientado al transporte de datos masivos, pero > calculo que para pasar mensajes tambien tiene que funcionar. > > P2P permitiria que dos clientes, que en realidad en este caso seria el > server y el clientes se comuniquen y calculo que por ser P2P funcione sin > problemas bajo internet. > > > Bueno sigo investigando. > > Saludos > > > > -- > > Yahoo! Cocina > Recetas prácticas y comida saludable > Visitá http://ar.mujer.yahoo.com/cocina/ >
[patrones] Observer Pattern Remoto
Buscando un poco mas en detalle, puede encontrar esto: http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-1-architecture/ La aplicacion de la comunicacion Duplex de WCF en Silverlight. Este otro link explica como implementar un Server Push con SilverLight: http://blogs.msdn.com/silverlightws/archive/2008/06/10/detailed-overview-of-silverlight-2-beta-2-web-service-features.aspx Es justo lo que buscaba, esto confirma que Duplex WCF funciona en un entorno de internet, ahora la pregunta seria se podra utilizar estos componentes de silverlight pero en una aplicacion que no sea silverlight, que sea un servicio windows. Lo que me llamo la atencion es porque esto se implementa en silverlight y no como parte de WCF simple. Saludos ¡Buscá desde tu celular! Yahoo! oneSEARCH ahora está en Claro http://ar.mobile.yahoo.com/onesearch
[patrones] Observer Pattern Remoto
Walter, que tal. La idea que estaba pensando era implementar algo de la logica que aplica Comet al mantener un canal entre cliente y servidor. Recorda que Comet funciona en un entorno web y no requiere abrir puerto ni nada especial, ni requiere instalacion en el cliente. La idea es que el servicio windows funcione como cliente (como si fuera el browser del cliente) y establezca un enlace con el servidor, en este caso podria ser un asmx, o un servicio de WCF, la cuestion es como hacer que el canal se mantenga, cosa que desde el server pueda recuperlo y enviar info. de nuevo por este. Lo que enviaria seria por ahi un reporte de Crystal report serializado, por supuesto la generacion la haria en el servidor web, y se envia como xml o texto por el canal. El servicio windows tomaria esta comunicacion y ejecutaria el proceso de impresion previa generacion del reporte que fue envio por el canal de forma serializada. Aca truco estaria estaria en descubrir como puedo mantener el canal como lo hace Comet, (si es esta una solucion, o hay alguna otra mejor), y poder enviar info por esta pasando por el firewall. Se que Comet usar _javascript_, pero este es un lenguaje de programacion que calculo se puede implementar la misma idea en otra tecnologia en este caso c#. Calculo que si bien es _javascript_ de este Comet usa socket y puertos, no creo que inventara nada nuevo. La funcionalidad Duplex de WCF es justo lo que busco, pero funciona en un entorno de Internet? Gracias por la ayuda. Saludos --- El jue 4-sep-08, Walter Poch <[EMAIL PROTECTED]> escribió: De: Walter Poch <[EMAIL PROTECTED]>Asunto: [patrones] Observer Pattern RemotoPara: "patrones List Member" Fecha: jueves, 4 de septiembre de 2008, 2:49 pm Mirá Leandro, el tema de la configuración de la VPN es FACILISIMO con Hamachi, es ejecutar un servicio Windows y te olvidas. Es muy pero muy simple. Respecto a lo de Commet, si he leido en el pasado, como una alternativa a AJAX donde se mantiene un canal de comunicación, pero cuando lo leí estaba medio verde y siempre lo vi con un browser como cliente y que mediante JS creaba el canal de comunicación, en este caso que tenes que hacer impresiones no se como lo harías. Saludos! Walter G. Poch.NET DeveloperCell: +54 (9 341) 3353273e-Mail: [EMAIL PROTECTED]MSN: [EMAIL PROTECTED]Skype: walter.pochwpoch.com.ar From: Leandro Tuttini Sent: Thursday, September 04, 2008 12:14 PM To: patrones List Member Subject: [patrones] Observer Pattern Remoto Hola Walter, gracias por la respuesta. Si es una solucion el utilizar una VPN, pero creo que requiere mucha configuracion, yo queria algo que e deploy sea mas simple. Habia pensado en utilizar algun concepto como el que usa la tecnologia "Comet", no se si estas familiarizado con esta, nada mas que no desde un exporador sino desde un servicio de windows desarrollado custom. Pero el concepto podria servir, al momento de registrar mantener una conexion abierta entre server y client, para que se comuniquen, pero aun estoy vieno como se podria llevar esta teoria a la practica. Mas que nada por como persistir la conexion abierta. Se que en java hay mas framework que implementan Comet de forma simple, aun no se si en .net esto esta tan cerrado, como para sacar alguna idea en limpio. Igual lo que me intriga es como funciona logmein, tiene que ser simple el concepto, pero no encuentro ningun ejemplo de implementar algo parecido, aunque sea solo para enviar string de datos, no pretendo que sea tan complejo como el producto logmein de control remoto. Bueno cualqueir sugerencia, sera de ayuda. Saludos --- El jue 4-sep-08, Walter Poch <[EMAIL PROTECTED]> escribió: De: Walter Poch <[EMAIL PROTECTED]>Asunto: [patrones] Observer Pattern RemotoPara: "patrones List Member" Fecha: jueves, 4 de septiembre de 2008, 10:51 am Hola Leandro, Mirá yo no soy arquitecto, y no se si tu solución será la óptima; pero para hacer lo que queres de abrir puertos etc, lo que podrías es crear una VPN entre el server Web y tus clientes; y de esta forma crear una zona segura con puertos abiertos. Una herramienta de la gente de LogMeIn que te permite hacer esto es Hamachi, tiene dos version, una gratuita y otra paga. Es sólo un granito de arena Saludos! Walter G. Poch.NET DeveloperCell: +54 (9 341) 3353273e-Mail: [EMAIL PROTECTED]MSN: [EMAIL PROTECTED]Skype: walter.pochwpoch.com.ar From: Leandro Tuttini Sent: Thursday, September 04, 2008 10:36 AM To: patrones List Member Subject: [patrones] Observer Pattern Remoto Hola que tal. Queria plantear una situacion a ver que cosnejos me dan, y si es posible implementarla. La i
[patrones] Observer Pattern Remoto
Mirá Leandro, el tema de la configuración de la VPN es FACILISIMO con Hamachi, es ejecutar un servicio Windows y te olvidas. Es muy pero muy simple. Respecto a lo de Commet, si he leido en el pasado, como una alternativa a AJAX donde se mantiene un canal de comunicación, pero cuando lo leí estaba medio verde y siempre lo vi con un browser como cliente y que mediante JS creaba el canal de comunicación, en este caso que tenes que hacer impresiones no se como lo harías. Saludos! Walter G. Poch .NET Developer Cell: +54 (9 341) 3353273 e-Mail: [EMAIL PROTECTED] MSN: [EMAIL PROTECTED] Skype: walter.poch wpoch.com.ar From: Leandro Tuttini Sent: Thursday, September 04, 2008 12:14 PM To: patrones List Member Subject: [patrones] Observer Pattern Remoto Hola Walter, gracias por la respuesta. Si es una solucion el utilizar una VPN, pero creo que requiere mucha configuracion, yo queria algo que e deploy sea mas simple. Habia pensado en utilizar algun concepto como el que usa la tecnologia "Comet", no se si estas familiarizado con esta, nada mas que no desde un exporador sino desde un servicio de windows desarrollado custom. Pero el concepto podria servir, al momento de registrar mantener una conexion abierta entre server y client, para que se comuniquen, pero aun estoy vieno como se podria llevar esta teoria a la practica. Mas que nada por como persistir la conexion abierta. Se que en java hay mas framework que implementan Comet de forma simple, aun no se si en .net esto esta tan cerrado, como para sacar alguna idea en limpio. Igual lo que me intriga es como funciona logmein, tiene que ser simple el concepto, pero no encuentro ningun ejemplo de implementar algo parecido, aunque sea solo para enviar string de datos, no pretendo que sea tan complejo como el producto logmein de control remoto. Bueno cualqueir sugerencia, sera de ayuda. Saludos --- El jue 4-sep-08, Walter Poch <[EMAIL PROTECTED]> escribió: De: Walter Poch <[EMAIL PROTECTED]> Asunto: [patrones] Observer Pattern Remoto Para: "patrones List Member" Fecha: jueves, 4 de septiembre de 2008, 10:51 am Hola Leandro, Mirá yo no soy arquitecto, y no se si tu solución será la óptima; pero para hacer lo que queres de abrir puertos etc, lo que podrías es crear una VPN entre el server Web y tus clientes; y de esta forma crear una zona segura con puertos abiertos. Una herramienta de la gente de LogMeIn que te permite hacer esto es Hamachi, tiene dos version, una gratuita y otra paga. Es sólo un granito de arena Saludos! Walter G. Poch .NET Developer Cell: +54 (9 341) 3353273 e-Mail: [EMAIL PROTECTED] MSN: [EMAIL PROTECTED] Skype: walter.poch wpoch.com.ar From: Leandro Tuttini Sent: Thursday, September 04, 2008 10:36 AM To: patrones List Member Subject: [patrones] Observer Pattern Remoto Hola que tal. Queria plantear una situacion a ver que cosnejos me dan, y si es posible implementarla. La idea es aplicar el patron observer pero de forma remota. Planteo el escenario: Tengo una aplicacion expuesta en la web, que expone una aplicacion web y varios servicios, usando wcf y asmx, es indistinto. Por otro lado tengo aplicaciones de escritorio que estan dentro de un red local, y tienen salida a internet para utilizar la aplicacion. Resulta que ante cierta operacion con la aplicacion se deberia procesar la logica de negocio (en el servidor remoto) y lanzar una impresion en ciertos print server (que se encuentran locales en el red), esto ultimo de imprimir es solo una idea, puede se que mas adelante se necesite para enviar otras cosas comos e un cash dispenser, o alertas, etc. La cuestion es que los clientes tienen salida a internet con lo cual pueden acceder a la aplicacion y sus servicios, pero desde el servidor expuertos en la web no me puedo comunicar hacia adentro de la empresa, ya que como sabran hay firewall y demas aspectos de seguridad. Nota: el cliente no tiene servicio expuestos en la web, ni posee infraestructura para poder tenerlos, es por eso que la aplicacion esta hosteada en servidores de terceros expuestos a internet, con toda la seguridad que esto requiere (uso de SSL, etc) Entonces que pense, desarrollar un servicio de windows que corrar en los sevidores de impresion o en alguna otro pc local a la empresa y que al
[patrones] Observer Pattern Remoto
Mil gracias a todos por las respuestas. Coincido que hay mil variedades de encontrarle una solucion al problema que planteo, desde exponer el servicio web desde el cliente para que lo llame el servidor, pasando por usar una VPN, etc. Pero estaba buscando una solucion que no requiera tanta configuracion algo que se instale como el servicio de windows, por ejemplo, y ya quede funcionando en el cliente; por eso lo de exponer servicio, abrir puertos y demas cosas queria dejarlas como ultima alternativa. Por esta razon plantee lo de usar algo parecido a "Comet", el cual es una tecnologia que usar por ejemplo Google desde su chatear en gmail, manteniendo una conexion al servidor desde el browser. Y nada tiene que instalar nada solo entra a gmail y listo ya tiene el chat. Pablo, me gusto lo del canal Duplex, pero sino tengo mal entendido solo puede ser usado en una intranet y con serializacion binaria, por ahi este equivocado, si es asi, seria la solucion perfecta. La conexion duplex de wcf puede mantenerse con conexiones a traves de internet ? Tendrian algun ejemplo de implementacion. Otra alternativa que estaba pensando era usar algun framework de P2P, se que por ahi esto esta mas orientado al transporte de datos masivos, pero calculo que para pasar mensajes tambien tiene que funcionar. P2P permitiria que dos clientes, que en realidad en este caso seria el server y el clientes se comuniquen y calculo que por ser P2P funcione sin problemas bajo internet. Bueno sigo investigando. Saludos ¡Buscá desde tu celular! Yahoo! oneSEARCH ahora está en Claro http://ar.mobile.yahoo.com/onesearch
[patrones] Observer Pattern Remoto
Hola Leandro! No creo que sea lo que estas buscando, pero conociendote, creo que te va a interesar: http://labs.biztalk.net Ahora ahi, mediante un intermediario, podrias comunicar N maquinas, via internet, lo que ahora MS llama "internet service bus". No lo probe, pero permitiria implementar un observer, o un publish subscribe, via esa tecnologia (algo mas complejo con WCF pelado) Mis enlaces, que estoy investigando, en http://del.icio.us/ajlopez/biztalkservices Nos leemos! Angel "Java" Lopez http://www.ajlopez.com/ - Original Message - From: Leandro Tuttini To: patrones List Member Sent: Thursday, September 04, 2008 10:36 AM Subject: [patrones] Observer Pattern Remoto Hola que tal. Queria plantear una situacion a ver que cosnejos me dan, y si es posible implementarla. La idea es aplicar el patron observer pero de forma remota. Planteo el escenario: Tengo una aplicacion expuesta en la web, que expone una aplicacion web y varios servicios, usando wcf y asmx, es indistinto. Por otro lado tengo aplicaciones de escritorio que estan dentro de un red local, y tienen salida a internet para utilizar la aplicacion. Resulta que ante cierta operacion con la aplicacion se deberia procesar la logica de negocio (en el servidor remoto) y lanzar una impresion en ciertos print server (que se encuentran locales en el red), esto ultimo de imprimir es solo una idea, puede se que mas adelante se necesite para enviar otras cosas comos e un cash dispenser, o alertas, etc. La cuestion es que los clientes tienen salida a internet con lo cual pueden acceder a la aplicacion y sus servicios, pero desde el servidor expuertos en la web no me puedo comunicar hacia adentro de la empresa, ya que como sabran hay firewall y demas aspectos de seguridad. Nota: el cliente no tiene servicio expuestos en la web, ni posee infraestructura para poder tenerlos, es por eso que la aplicacion esta hosteada en servidores de terceros expuestos a internet, con toda la seguridad que esto requiere (uso de SSL, etc) Entonces que pense, desarrollar un servicio de windows que corrar en los sevidores de impresion o en alguna otro pc local a la empresa y que al iniciarse se subscriba mediante la llamada a un servicio web, pasandoles la informacion de su localizacion, esto se puede sin problemas ya que se tiene salida. Ahora la otra pata es la compleja y por la cual queria consultar, como comunico el servidor con el servicio corriente en las maquians locales, habia pensado implementar algo parecido a los que hace la aplicacion de LogMeIn (https://secure.logmein.com/home.asp). Creo que por ahi saben como funciona, se descarga un cliente que envia info a un servidor para registrase, y cuando entra una peticion el server es el que se contacta con el cliente, y lo mas interesante es que pasa todos los firewall sin necesidad de abrir puertos. Esto me permitiria que al procesar en el servidor enviar un mensaje al servicio de windows (que se registro) para que imprima localmente o envie un mensaje, o etc. Se que me diran que realice un servicio que cada cierto tiempo realice una consulta a un servicio web para ver si tiene alguna peticion que puede estar almacenada en un msqueue, o en una table en la db; pero justamente por eso consulto por el patron observer, es mas linda la solucion, ya que los clientes se subscriben y desde el servidor se envian los mensajes, ante un evento La pregunta es: tienen idea como se puede implementar algo similar a como funciona logmein, y como es que este servicio puede funcionar sin que los firewalls le molesten e identificar una pc en particular. Bueno cualquier sugerencia sera de gran ayuda. Saludos -- ¡Buscá desde tu celular! Yahoo! oneSEARCH ahora está en Claro http://ar.mobile.yahoo.com/onesearch
[patrones] Observer Pattern Remoto
Hola Walter, gracias por la respuesta. Si es una solucion el utilizar una VPN, pero creo que requiere mucha configuracion, yo queria algo que e deploy sea mas simple. Habia pensado en utilizar algun concepto como el que usa la tecnologia "Comet", no se si estas familiarizado con esta, nada mas que no desde un exporador sino desde un servicio de windows desarrollado custom. Pero el concepto podria servir, al momento de registrar mantener una conexion abierta entre server y client, para que se comuniquen, pero aun estoy vieno como se podria llevar esta teoria a la practica. Mas que nada por como persistir la conexion abierta. Se que en java hay mas framework que implementan Comet de forma simple, aun no se si en .net esto esta tan cerrado, como para sacar alguna idea en limpio. Igual lo que me intriga es como funciona logmein, tiene que ser simple el concepto, pero no encuentro ningun ejemplo de implementar algo parecido, aunque sea solo para enviar string de datos, no pretendo que sea tan complejo como el producto logmein de control remoto. Bueno cualqueir sugerencia, sera de ayuda. Saludos --- El jue 4-sep-08, Walter Poch <[EMAIL PROTECTED]> escribió: De: Walter Poch <[EMAIL PROTECTED]>Asunto: [patrones] Observer Pattern RemotoPara: "patrones List Member" Fecha: jueves, 4 de septiembre de 2008, 10:51 am Hola Leandro, Mirá yo no soy arquitecto, y no se si tu solución será la óptima; pero para hacer lo que queres de abrir puertos etc, lo que podrías es crear una VPN entre el server Web y tus clientes; y de esta forma crear una zona segura con puertos abiertos. Una herramienta de la gente de LogMeIn que te permite hacer esto es Hamachi, tiene dos version, una gratuita y otra paga. Es sólo un granito de arena Saludos! Walter G. Poch.NET DeveloperCell: +54 (9 341) 3353273e-Mail: [EMAIL PROTECTED]MSN: [EMAIL PROTECTED]Skype: walter.pochwpoch.com.ar From: Leandro Tuttini Sent: Thursday, September 04, 2008 10:36 AM To: patrones List Member Subject: [patrones] Observer Pattern Remoto Hola que tal. Queria plantear una situacion a ver que cosnejos me dan, y si es posible implementarla. La idea es aplicar el patron observer pero de forma remota. Planteo el escenario: Tengo una aplicacion expuesta en la web, que expone una aplicacion web y varios servicios, usando wcf y asmx, es indistinto. Por otro lado tengo aplicaciones de escritorio que estan dentro de un red local, y tienen salida a internet para utilizar la aplicacion. Resulta que ante cierta operacion con la aplicacion se deberia procesar la logica de negocio (en el servidor remoto) y lanzar una impresion en ciertos print server (que se encuentran locales en el red), esto ultimo de imprimir es solo una idea, puede se que mas adelante se necesite para enviar otras cosas comos e un cash dispenser, o alertas, etc. La cuestion es que los clientes tienen salida a internet con lo cual pueden acceder a la aplicacion y sus servicios, pero desde el servidor expuertos en la web no me puedo comunicar hacia adentro de la empresa, ya que como sabran hay firewall y demas aspectos de seguridad. Nota: el cliente no tiene servicio expuestos en la web, ni posee infraestructura para poder tenerlos, es por eso que la aplicacion esta hosteada en servidores de terceros expuestos a internet, con toda la seguridad que esto requiere (uso de SSL, etc) Entonces que pense, desarrollar un servicio de windows que corrar en los sevidores de impresion o en alguna otro pc local a la empresa y que al iniciarse se subscriba mediante la llamada a un servicio web, pasandoles la informacion de su localizacion, esto se puede sin problemas ya que se tiene salida. Ahora la otra pata es la compleja y por la cual queria consultar, como comunico el servidor con el servicio corriente en las maquians locales, habia pensado implementar algo parecido a los que hace la aplicacion de LogMeIn (https://secure.logmein.com/home.asp). Creo que por ahi saben como funciona, se descarga un cliente que envia info a un servidor para registrase, y cuando entra una peticion el server es el que se contacta con el cliente, y lo mas interesante es que pasa todos los firewall sin necesidad de abrir puertos. Esto me permitiria que al procesar en el servidor enviar un mensaje al servicio de windows (que se registro) para que imprima localmente o envie un mensaje, o etc. Se que me diran que realice un servicio que cada cierto tiempo realice una consulta a un servicio web para ver si tiene alguna peticion que puede estar almacenada en un msqueue, o en una table en la db; pero justamente por eso consulto por el patron observer, es mas linda la solucion, ya que los clientes se subscriben y desde el servidor se envian los mensajes, ante un evento La pregunta es: tienen idea como se puede implementar algo si
[patrones] Observer Pattern Remoto
Hola Leandro... Lo podes resolver muy fácilabriendo un canal Duplex. (DuplexChannelFactory). Esto te permite enviar y recibir mensajes desde los dos extremos(sería una especie de callback.es más, tenés que implementar una interface callback). Saludos. Pablo El 4 de septiembre de 2008 10:36, Leandro Tuttini < [EMAIL PROTECTED]> escribió: > > Hola que tal. > > Queria plantear una situacion a ver que cosnejos me dan, y si es posible > implementarla. > > La idea es aplicar el patron observer pero de forma remota. > > Planteo el escenario: > Tengo una aplicacion expuesta en la web, que expone una aplicacion web y > varios servicios, usando wcf y asmx, es indistinto. > > Por otro lado tengo aplicaciones de escritorio que estan dentro de un red > local, y tienen salida a internet para utilizar la aplicacion. > > Resulta que ante cierta operacion con la aplicacion se deberia procesar la > logica de negocio (en el servidor remoto) y lanzar una impresion en ciertos > print server (que se encuentran locales en el red), esto ultimo de imprimir > es solo una idea, puede se que mas adelante se necesite para enviar otras > cosas comos e un cash dispenser, o alertas, etc. > > La cuestion es que los clientes tienen salida a internet con lo cual pueden > acceder a la aplicacion y sus servicios, pero desde el servidor expuertos en > la web no me puedo comunicar hacia adentro de la empresa, ya que como sabran > hay firewall y demas aspectos de seguridad. > Nota: el cliente no tiene servicio expuestos en la web, ni posee > infraestructura para poder tenerlos, es por eso que la aplicacion esta > hosteada en servidores de terceros expuestos a internet, con toda la > seguridad que esto requiere (uso de SSL, etc) > > Entonces que pense, desarrollar un servicio de windows que corrar en los > sevidores de impresion o en alguna otro pc local a la empresa y que al > iniciarse se subscriba mediante la llamada a un servicio web, pasandoles la > informacion de su localizacion, esto se puede sin problemas ya que se tiene > salida. > > Ahora la otra pata es la compleja y por la cual queria consultar, como > comunico el servidor con el servicio corriente en las maquians locales, > habia pensado implementar algo parecido a los que hace la aplicacion de > LogMeIn (https://secure.logmein.com/home.asp). > > Creo que por ahi saben como funciona, se descarga un cliente que envia info > a un servidor para registrase, y cuando entra una peticion el server es el > que se contacta con el cliente, y lo mas interesante es que pasa todos los > firewall sin necesidad de abrir puertos. > > Esto me permitiria que al procesar en el servidor enviar un mensaje al > servicio de windows (que se registro) para que imprima localmente o envie un > mensaje, o etc. > > Se que me diran que realice un servicio que cada cierto tiempo realice una > consulta a un servicio web para ver si tiene alguna peticion que puede > estar almacenada en un msqueue, o en una table en la db; pero justamente por > eso consulto por el patron observer, es mas linda la solucion, ya que los > clientes se subscriben y desde el servidor se envian los mensajes, ante un > evento > > La pregunta es: tienen idea como se puede implementar algo similar a como > funciona logmein, y como es que este servicio puede funcionar sin que los > firewalls le molesten e identificar una pc en particular. > > Bueno cualquier sugerencia sera de gran ayuda. > > Saludos > > -- > > ¡Buscá desde tu celular! Yahoo! oneSEARCH ahora está en Claro > http://ar.mobile.yahoo.com/onesearch >
[patrones] Observer Pattern Remoto
Leete esto Distributed Systems Patterns http://msdn.microsoft.com/en-us/library/ms998483.aspx Broker http://msdn.microsoft.com/en-us/library/ms978706.aspx Context Many complex software systems run on multiple processors or distributed computers. There are a number of reasons to distribute software across computers, for example: · A distributed system can take advantage of the computing power of multiple CPUs or a cluster of low-cost computers. · Certain software may only be available on specific computers. · Parts of the software may have to run on different network segments due to security considerations. · Some services may be provided by business partners and may only be accessed over the Internet. However, implementing a distributed system is not easy because you have to deal with issues such as concurrency, cross-platform connectivity, and unreliable network connections. Problem How can you structure a distributed system so that application developers don't have to concern themselves with the details of remote communication? Forces The following forces must be reconciled as you build a distributed system: · Although distributed systems provide a lot of advantages, they also tend to introduce significant complexity into the software system. Physical and logic boundaries exist between processes or computers running on the same network. To have objects running on different processes or computers communicating with each other across these boundaries, you have to deal with issues such as communications, encoding, and security. If you mix these implementation details with the application code, a simple change in the communications infrastructure could lead to significant code changes. · The distribution of the system often occurs after development is complete. For example, software may be distributed across multiple servers to increase processing power. You would not want to change the application code at this late a stage in the life cycle. · The details of cross-process communication can be quite tedious. You have to deal with TCP/IP sockets, marshaling and unmarshaling, serialization, timeouts, and many other challenges. Therefore, it makes sense to have a special team focus on the infrastructure so that the application developers do not have to learn about remote communications. · To maintain the flexibility of being able to move components to different locations at deployment time, you must avoid hard-coding the location of specific components. Esto viene de aca y ted a un marco teorico base Enterprise Solution Patterns Using Microsoft .NET http://msdn.microsoft.com/en-us/library/ms998469.aspx despues pasa a CAB -Event Broker: Pub-Sub for your components http://blogs.msdn.com/edjez/archive/2005/04/20/CABEventBroker101.aspx aunque sea smart client te sirven los conceptos Smart Client - Composite UI Application Block http://msdn.microsoft.com/en-us/library/aa480450.aspx From: patrones@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of Leandro Tuttini Sent: Thursday, September 04, 2008 10:36 AM To: patrones List Member Subject: [patrones] Observer Pattern Remoto Hola que tal. Queria plantear una situacion a ver que cosnejos me dan, y si es posible implementarla. La idea es aplicar el patron observer pero de forma remota. Planteo el escenario: Tengo una aplicacion expuesta en la web, que expone una aplicacion web y varios servicios, usando wcf y asmx, es indistinto. Por otro lado tengo aplicaciones de escritorio que estan dentro de un red local, y tienen salida a internet para utilizar la aplicacion. Resulta que ante cierta operacion con la aplicacion se deberia procesar la logica de negocio (en el servidor remoto) y lanzar una impresion en ciertos print server (que se encuentran locales en el red), esto ultimo de imprimir es solo una idea, puede se que mas adelante se necesite para enviar otras cosas comos e un cash dispenser, o alertas, etc. La cuestion es que los clientes tienen salida a internet con lo cual pueden acceder a la aplicacion y sus servicios, pero desde el servidor expuertos en la web no me puedo comunicar hacia adentro de la empresa, ya que como sabran hay firewall y demas aspectos de seguridad. Nota: el cliente no tiene servicio expuestos en la web, ni posee infraestructura para poder tenerlos, es por eso que la aplicacion esta hosteada en servidores de terceros expuestos a internet, con toda la seguridad que esto requiere (uso de SSL, etc) Entonces que pense, desarrollar un servicio de windows que corrar en los sevidores de impresion o en alguna otro pc local a la empresa y que al iniciarse se subscriba mediante la llamada a un servicio web, pasandoles la informacion de su localizacion, esto se puede sin problemas ya que se tiene salida. Ahora la otra pata es la compleja y por la cual queria consultar, como comunico el ser
[patrones] Observer Pattern Remoto
Hola Leandro. Pregunto: ¿no te sirve usar un servicio tipo DynDNS para que desde fuera se vea un servidor de la empresa? Incluso podes mapear puertos del router a determinado puerto e IP interno. Te digo esto porque por ejemplo, nosotros porbamos de acceder a un SQL Server interno, desde internet usando DynDNS y funcionó de 10, aunque tenés el tema de la seguridad (que no sería mayor problema si en la empresa pones un web service que haga el trabajo) Saludos El 4 de septiembre de 2008 10:54, Alejandro G. Jack <[EMAIL PROTECTED]>escribió: > Event Broker, Remoting > > > > *From:* patrones@mug.org.ar [mailto:[EMAIL PROTECTED] *On Behalf Of *Leandro > Tuttini > *Sent:* Thursday, September 04, 2008 10:36 AM > *To:* patrones List Member > *Subject:* [patrones] Observer Pattern Remoto > > > > > > Hola que tal. > > > > Queria plantear una situacion a ver que cosnejos me dan, y si es posible > implementarla. > > > > La idea es aplicar el patron observer pero de forma remota. > > > > Planteo el escenario: > > Tengo una aplicacion expuesta en la web, que expone una aplicacion web y > varios servicios, usando wcf y asmx, es indistinto. > > > > Por otro lado tengo aplicaciones de escritorio que estan dentro de un red > local, y tienen salida a internet para utilizar la aplicacion. > > > > Resulta que ante cierta operacion con la aplicacion se deberia procesar la > logica de negocio (en el servidor remoto) y lanzar una impresion en ciertos > print server (que se encuentran locales en el red), esto ultimo de imprimir > es solo una idea, puede se que mas adelante se necesite para enviar otras > cosas comos e un cash dispenser, o alertas, etc. > > > > La cuestion es que los clientes tienen salida a internet con lo cual pueden > acceder a la aplicacion y sus servicios, pero desde el servidor expuertos en > la web no me puedo comunicar hacia adentro de la empresa, ya que como sabran > hay firewall y demas aspectos de seguridad. > > Nota: el cliente no tiene servicio expuestos en la web, ni posee > infraestructura para poder tenerlos, es por eso que la aplicacion esta > hosteada en servidores de terceros expuestos a internet, con toda la > seguridad que esto requiere (uso de SSL, etc) > > > > Entonces que pense, desarrollar un servicio de windows que corrar en los > sevidores de impresion o en alguna otro pc local a la empresa y que al > iniciarse se subscriba mediante la llamada a un servicio web, pasandoles la > informacion de su localizacion, esto se puede sin problemas ya que se tiene > salida. > > > > Ahora la otra pata es la compleja y por la cual queria consultar, como > comunico el servidor con el servicio corriente en las maquians locales, > habia pensado implementar algo parecido a los que hace la aplicacion de > LogMeIn (https://secure.logmein.com/home.asp). > > > > Creo que por ahi saben como funciona, se descarga un cliente que envia info > a un servidor para registrase, y cuando entra una peticion el server es el > que se contacta con el cliente, y lo mas interesante es que pasa todos los > firewall sin necesidad de abrir puertos. > > > > Esto me permitiria que al procesar en el servidor enviar un mensaje al > servicio de windows (que se registro) para que imprima localmente o envie un > mensaje, o etc. > > > > Se que me diran que realice un servicio que cada cierto tiempo realice una > consulta a un servicio web para ver si tiene alguna peticion que puede > estar almacenada en un msqueue, o en una table en la db; pero justamente por > eso consulto por el patron observer, es mas linda la solucion, ya que los > clientes se subscriben y desde el servidor se envian los mensajes, ante un > evento > > > > La pregunta es: tienen idea como se puede implementar algo similar a como > funciona logmein, y como es que este servicio puede funcionar sin que los > firewalls le molesten e identificar una pc en particular. > > > > Bueno cualquier sugerencia sera de gran ayuda. > > > > Saludos > > > -- > > > ¡Buscá desde tu celular! Yahoo! oneSEARCH ahora está en Claro > http://ar.mobile.yahoo.com/onesearch >
[patrones] Observer Pattern Remoto
Event Broker, Remoting From: patrones@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of Leandro Tuttini Sent: Thursday, September 04, 2008 10:36 AM To: patrones List Member Subject: [patrones] Observer Pattern Remoto Hola que tal. Queria plantear una situacion a ver que cosnejos me dan, y si es posible implementarla. La idea es aplicar el patron observer pero de forma remota. Planteo el escenario: Tengo una aplicacion expuesta en la web, que expone una aplicacion web y varios servicios, usando wcf y asmx, es indistinto. Por otro lado tengo aplicaciones de escritorio que estan dentro de un red local, y tienen salida a internet para utilizar la aplicacion. Resulta que ante cierta operacion con la aplicacion se deberia procesar la logica de negocio (en el servidor remoto) y lanzar una impresion en ciertos print server (que se encuentran locales en el red), esto ultimo de imprimir es solo una idea, puede se que mas adelante se necesite para enviar otras cosas comos e un cash dispenser, o alertas, etc. La cuestion es que los clientes tienen salida a internet con lo cual pueden acceder a la aplicacion y sus servicios, pero desde el servidor expuertos en la web no me puedo comunicar hacia adentro de la empresa, ya que como sabran hay firewall y demas aspectos de seguridad. Nota: el cliente no tiene servicio expuestos en la web, ni posee infraestructura para poder tenerlos, es por eso que la aplicacion esta hosteada en servidores de terceros expuestos a internet, con toda la seguridad que esto requiere (uso de SSL, etc) Entonces que pense, desarrollar un servicio de windows que corrar en los sevidores de impresion o en alguna otro pc local a la empresa y que al iniciarse se subscriba mediante la llamada a un servicio web, pasandoles la informacion de su localizacion, esto se puede sin problemas ya que se tiene salida. Ahora la otra pata es la compleja y por la cual queria consultar, como comunico el servidor con el servicio corriente en las maquians locales, habia pensado implementar algo parecido a los que hace la aplicacion de LogMeIn (https://secure.logmein.com/home.asp). Creo que por ahi saben como funciona, se descarga un cliente que envia info a un servidor para registrase, y cuando entra una peticion el server es el que se contacta con el cliente, y lo mas interesante es que pasa todos los firewall sin necesidad de abrir puertos. Esto me permitiria que al procesar en el servidor enviar un mensaje al servicio de windows (que se registro) para que imprima localmente o envie un mensaje, o etc. Se que me diran que realice un servicio que cada cierto tiempo realice una consulta a un servicio web para ver si tiene alguna peticion que puede estar almacenada en un msqueue, o en una table en la db; pero justamente por eso consulto por el patron observer, es mas linda la solucion, ya que los clientes se subscriben y desde el servidor se envian los mensajes, ante un evento La pregunta es: tienen idea como se puede implementar algo similar a como funciona logmein, y como es que este servicio puede funcionar sin que los firewalls le molesten e identificar una pc en particular. Bueno cualquier sugerencia sera de gran ayuda. Saludos _ ¡Buscá desde tu celular! Yahoo! oneSEARCH ahora está en Claro http://ar.mobile.yahoo.com/onesearch
[patrones] Observer Pattern Remoto
Hola Leandro, Mirá yo no soy arquitecto, y no se si tu solución será la óptima; pero para hacer lo que queres de abrir puertos etc, lo que podrías es crear una VPN entre el server Web y tus clientes; y de esta forma crear una zona segura con puertos abiertos. Una herramienta de la gente de LogMeIn que te permite hacer esto es Hamachi, tiene dos version, una gratuita y otra paga. Es sólo un granito de arena Saludos! Walter G. Poch .NET Developer Cell: +54 (9 341) 3353273 e-Mail: [EMAIL PROTECTED] MSN: [EMAIL PROTECTED] Skype: walter.poch wpoch.com.ar From: Leandro Tuttini Sent: Thursday, September 04, 2008 10:36 AM To: patrones List Member Subject: [patrones] Observer Pattern Remoto Hola que tal. Queria plantear una situacion a ver que cosnejos me dan, y si es posible implementarla. La idea es aplicar el patron observer pero de forma remota. Planteo el escenario: Tengo una aplicacion expuesta en la web, que expone una aplicacion web y varios servicios, usando wcf y asmx, es indistinto. Por otro lado tengo aplicaciones de escritorio que estan dentro de un red local, y tienen salida a internet para utilizar la aplicacion. Resulta que ante cierta operacion con la aplicacion se deberia procesar la logica de negocio (en el servidor remoto) y lanzar una impresion en ciertos print server (que se encuentran locales en el red), esto ultimo de imprimir es solo una idea, puede se que mas adelante se necesite para enviar otras cosas comos e un cash dispenser, o alertas, etc. La cuestion es que los clientes tienen salida a internet con lo cual pueden acceder a la aplicacion y sus servicios, pero desde el servidor expuertos en la web no me puedo comunicar hacia adentro de la empresa, ya que como sabran hay firewall y demas aspectos de seguridad. Nota: el cliente no tiene servicio expuestos en la web, ni posee infraestructura para poder tenerlos, es por eso que la aplicacion esta hosteada en servidores de terceros expuestos a internet, con toda la seguridad que esto requiere (uso de SSL, etc) Entonces que pense, desarrollar un servicio de windows que corrar en los sevidores de impresion o en alguna otro pc local a la empresa y que al iniciarse se subscriba mediante la llamada a un servicio web, pasandoles la informacion de su localizacion, esto se puede sin problemas ya que se tiene salida. Ahora la otra pata es la compleja y por la cual queria consultar, como comunico el servidor con el servicio corriente en las maquians locales, habia pensado implementar algo parecido a los que hace la aplicacion de LogMeIn (https://secure.logmein.com/home.asp). Creo que por ahi saben como funciona, se descarga un cliente que envia info a un servidor para registrase, y cuando entra una peticion el server es el que se contacta con el cliente, y lo mas interesante es que pasa todos los firewall sin necesidad de abrir puertos. Esto me permitiria que al procesar en el servidor enviar un mensaje al servicio de windows (que se registro) para que imprima localmente o envie un mensaje, o etc. Se que me diran que realice un servicio que cada cierto tiempo realice una consulta a un servicio web para ver si tiene alguna peticion que puede estar almacenada en un msqueue, o en una table en la db; pero justamente por eso consulto por el patron observer, es mas linda la solucion, ya que los clientes se subscriben y desde el servidor se envian los mensajes, ante un evento La pregunta es: tienen idea como se puede implementar algo similar a como funciona logmein, y como es que este servicio puede funcionar sin que los firewalls le molesten e identificar una pc en particular. Bueno cualquier sugerencia sera de gran ayuda. Saludos ¡Buscá desde tu celular! Yahoo! oneSEARCH ahora está en Claro http://ar.mobile.yahoo.com/onesearch<>
[patrones] Observer Pattern Remoto
Hola que tal. Queria plantear una situacion a ver que cosnejos me dan, y si es posible implementarla. La idea es aplicar el patron observer pero de forma remota. Planteo el escenario: Tengo una aplicacion expuesta en la web, que expone una aplicacion web y varios servicios, usando wcf y asmx, es indistinto. Por otro lado tengo aplicaciones de escritorio que estan dentro de un red local, y tienen salida a internet para utilizar la aplicacion. Resulta que ante cierta operacion con la aplicacion se deberia procesar la logica de negocio (en el servidor remoto) y lanzar una impresion en ciertos print server (que se encuentran locales en el red), esto ultimo de imprimir es solo una idea, puede se que mas adelante se necesite para enviar otras cosas comos e un cash dispenser, o alertas, etc. La cuestion es que los clientes tienen salida a internet con lo cual pueden acceder a la aplicacion y sus servicios, pero desde el servidor expuertos en la web no me puedo comunicar hacia adentro de la empresa, ya que como sabran hay firewall y demas aspectos de seguridad. Nota: el cliente no tiene servicio expuestos en la web, ni posee infraestructura para poder tenerlos, es por eso que la aplicacion esta hosteada en servidores de terceros expuestos a internet, con toda la seguridad que esto requiere (uso de SSL, etc) Entonces que pense, desarrollar un servicio de windows que corrar en los sevidores de impresion o en alguna otro pc local a la empresa y que al iniciarse se subscriba mediante la llamada a un servicio web, pasandoles la informacion de su localizacion, esto se puede sin problemas ya que se tiene salida. Ahora la otra pata es la compleja y por la cual queria consultar, como comunico el servidor con el servicio corriente en las maquians locales, habia pensado implementar algo parecido a los que hace la aplicacion de LogMeIn (https://secure.logmein.com/home.asp). Creo que por ahi saben como funciona, se descarga un cliente que envia info a un servidor para registrase, y cuando entra una peticion el server es el que se contacta con el cliente, y lo mas interesante es que pasa todos los firewall sin necesidad de abrir puertos. Esto me permitiria que al procesar en el servidor enviar un mensaje al servicio de windows (que se registro) para que imprima localmente o envie un mensaje, o etc. Se que me diran que realice un servicio que cada cierto tiempo realice una consulta a un servicio web para ver si tiene alguna peticion que puede estar almacenada en un msqueue, o en una table en la db; pero justamente por eso consulto por el patron observer, es mas linda la solucion, ya que los clientes se subscriben y desde el servidor se envian los mensajes, ante un evento La pregunta es: tienen idea como se puede implementar algo similar a como funciona logmein, y como es que este servicio puede funcionar sin que los firewalls le molesten e identificar una pc en particular. Bueno cualquier sugerencia sera de gran ayuda. Saludos Yahoo! Cocina Recetas prácticas y comida saludable http://ar.mujer.yahoo.com/cocina/
[patrones] Observer
Hola gente! Leandro, gracias por el dato, ya lo estoy agregando a mis enlaces de delicious (delicious es adictivo...:-) Bien, no vi algo asi en .NET, pero en el articulo que te habia mencionado mas abajo http://msdn.microsoft.com/msdnmag/issues/06/10/wcfessentials/default.aspx encontraran la forma de establecer un Http Dual (si, como Florencia de la V chiste para argentinos...no pude contenerme :-) Nos leemos! Angel "Java" Lopez http://www.ajlopez.com/ - Original Message - From: Leandro Tuttini To: patrones List Member Sent: Tuesday, February 27, 2007 3:49 PM Subject: [patrones] Observer Hola, que tal. No existe algo similar a esto en .NET Build asynchronous applications with the Distributed Event-Based Architecture for Web Services http://www-128.ibm.com/developerworks/webservices/library/ws-dbarch/?Open&ca=daw-ws Se trata de DEBA - Distributed Event-Based Architecture Este permite por ejemplo implementar un observer sobre web services, pero creo que va mas alla ya que esta orientado a objetos distribuidos. No se migro algo parecido a .net, jeje, lo pregunto porque como se migran tanto proyectos de java por ahi algo como esto es util, aunque veo que es complejo. Por ahi se puede implementar algo similar adaptando WCF, es posible? Saludos "Angel \"Java\" Lopez" <[EMAIL PROTECTED]> escribió: Hola gente! Leandro, WCF hace bidireccion sobre algunos transportes, no sobre todos. Pueden ver algun detalle mas explicativo que esta corta respuesta en http://msdn.microsoft.com/msdnmag/issues/06/10/wcfessentials/default.aspx En cuanto al caso remoto de Observer preguntas por la interfaz en el cliente? Por abajo se puede implementar un objeto cliente que converse con el objeto Observador que esta en el servidor. En el servidor, el que observa es este objeto, y en cuanto recibe algo, le hace callback al objeto en el cliente. Nos leemos! Angel "Java" Lopez http://www.ajlopez.com/ - Original Message - From: Leandro Tuttini To: patrones List Member Sent: Tuesday, February 20, 2007 9:51 AM Subject: [patrones] Observer Angel que tal. Me dejaste pensando sobre el comentario de WCF y el canal bidireccional. Como se implementaria esto si se tratara de una aplicarlo sobre el protocolo http, sea mediante servicios web. Entiendo que WCF abstrae de la implementacion fisica del servicio, o sea pudiendo cambiar de HTTP, a TCP, o MSQ, etc. En FTP entiendo que el framework deje escuchando en un puerto determinado, pero en http, no me cierra como queda escuchando sobre el puerto 80 sabiendo que este si se encuentra en una WAN seguro un firewall impedira esto. Segun vi el patron observer hace uso de un interfaz para disminuir el acoplamiento si es remoto no me cierra como interviene la interfaz. A que me refiero como registrar la referencia al objeto remoto. Implementar Observer remoto, no seria casi como estar en una arquitertura orientada a eventos? En donde objetos remotos se subscriben a eventos que les interesan. Gracias por la respuesta. Saludos "Angel \"Java\" Lopez" <[EMAIL PROTECTED]> escribió: Hola gente! Tema interesante, respuesta rapidisima... - Ahora con WCF (Windows Communication Framework), podemos implementar un canal bidireccional, entre dos AppDomains, asi que uno puede "escuchar" al otro - El Observer puede servir para alertar a otro sistema o parte de nuestra aplicacion, de algo que le interese. No necesariamente es una presentacion, puede ser, digamos, un sistema de CRM que quiere enterarse que hay una nueva venta... - El Observer local podria igual distribuir remotamente, algun evento... Recuerdo alguna implementacion con Remoting... Podria dejar tambien algo en una cola de mensajeria, para que alguien remoto se entere de algo, por ejemplo el CRM se entere de una nueva venta - Un Observer local podria grabar algo, como un Event Log, o algo de WMI y eso luego ser tomado y procesado mas adelante - Me daria una vuelta por http://www.martinfowler.com/eaaDev/OrganizingPresentations.html http://www.martinfowler.com/eaaDev/MediatedSynchronization.html en caso de no tener miedo a quedarme pegado con todos los temas interesantes que ahi se tratan - Le daria un vistazo a Enterprise Service Bus para un tema mas grande y fascinante... debe haber algo en http://www.ajlopez.net/Busqueda.php?Filtro=esb Y para integracion entre aplicaciones, como siempre www.integrationpatterns.com Nos leemos! Angel "Java" Lopez http://www.ajlopez.com/ - Original Message - From: Leandro Tuttini To: patr
[patrones] Observer
Hola, que tal. No existe algo similar a esto en .NET Build asynchronous applications with the Distributed Event-Based Architecture for Web Services http://www-128.ibm.com/developerworks/webservices/library/ws-dbarch/?Open&ca=daw-ws Se trata de DEBA - Distributed Event-Based Architecture Este permite por ejemplo implementar un observer sobre web services, pero creo que va mas alla ya que esta orientado a objetos distribuidos. No se migro algo parecido a .net, jeje, lo pregunto porque como se migran tanto proyectos de java por ahi algo como esto es util, aunque veo que es complejo. Por ahi se puede implementar algo similar adaptando WCF, es posible? Saludos "Angel \"Java\" Lopez" <[EMAIL PROTECTED]> escribió: Hola gente! Leandro, WCF hace bidireccion sobre algunos transportes, no sobre todos. Pueden ver algun detalle mas explicativo que esta corta respuesta en http://msdn.microsoft.com/msdnmag/issues/06/10/wcfessentials/default.aspx En cuanto al caso remoto de Observer preguntas por la interfaz en el cliente? Por abajo se puede implementar un objeto cliente que converse con el objeto Observador que esta en el servidor. En el servidor, el que observa es este objeto, y en cuanto recibe algo, le hace callback al objeto en el cliente. Nos leemos! Angel "Java" Lopez http://www.ajlopez.com/ - Original Message - From: Leandro Tuttini To: patrones List Member Sent: Tuesday, February 20, 2007 9:51 AM Subject: [patrones] Observer Angel que tal. Me dejaste pensando sobre el comentario de WCF y el canal bidireccional. Como se implementaria esto si se tratara de una aplicarlo sobre el protocolo http, sea mediante servicios web. Entiendo que WCF abstrae de la implementacion fisica del servicio, o sea pudiendo cambiar de HTTP, a TCP, o MSQ, etc. En FTP entiendo que el framework deje escuchando en un puerto determinado, pero en http, no me cierra como queda escuchando sobre el puerto 80 sabiendo que este si se encuentra en una WAN seguro un firewall impedira esto. Segun vi el patron observer hace uso de un interfaz para disminuir el acoplamiento si es remoto no me cierra como interviene la interfaz. A que me refiero como registrar la referencia al objeto remoto. Implementar Observer remoto, no seria casi como estar en una arquitertura orientada a eventos? En donde objetos remotos se subscriben a eventos que les interesan. Gracias por la respuesta. Saludos "Angel \"Java\" Lopez" <[EMAIL PROTECTED]> escribió: Hola gente! Tema interesante, respuesta rapidisima... - Ahora con WCF (Windows Communication Framework), podemos implementar un canal bidireccional, entre dos AppDomains, asi que uno puede "escuchar" al otro - El Observer puede servir para alertar a otro sistema o parte de nuestra aplicacion, de algo que le interese. No necesariamente es una presentacion, puede ser, digamos, un sistema de CRM que quiere enterarse que hay una nueva venta... - El Observer local podria igual distribuir remotamente, algun evento... Recuerdo alguna implementacion con Remoting... Podria dejar tambien algo en una cola de mensajeria, para que alguien remoto se entere de algo, por ejemplo el CRM se entere de una nueva venta - Un Observer local podria grabar algo, como un Event Log, o algo de WMI y eso luego ser tomado y procesado mas adelante - Me daria una vuelta por http://www.martinfowler.com/eaaDev/OrganizingPresentations.html http://www.martinfowler.com/eaaDev/MediatedSynchronization.html en caso de no tener miedo a quedarme pegado con todos los temas interesantes que ahi se tratan - Le daria un vistazo a Enterprise Service Bus para un tema mas grande y fascinante... debe haber algo en http://www.ajlopez.net/Busqueda.php?Filtro=esb Y para integracion entre aplicaciones, como siempre www.integrationpatterns.com Nos leemos! Angel "Java" Lopez http://www.ajlopez.com/ - Original Message - From: Leandro Tuttini To: patrones List Member Sent: Monday, February 19, 2007 5:17 PM Subject: [patrones] Observer Que tal, queria plantear la siguiente consulta. Resulta que esto repasando el libro de Larman, UML y Patrones, y me surgen alguans dudas que queria plantear. En muchos ejemplo hace referencia a que el dominio podria hacer uso del patron Observer para enviar alertas a la presentacion, cuando comenta esto lo hace junto a una aplicacion confeccionada en Swing. Esto ultimo me parecio raro ya que a medida que avanza despues habla de distribuido pero hasta dodne se el Observer solo funciona si esta en el mismo AppDomain, o sea presentacion y Dominio corriendo en el mismo proceso. Ahora bien como se aplicaria este mismo concepto
[patrones] Observer
Hola gente! Leandro, WCF hace bidireccion sobre algunos transportes, no sobre todos. Pueden ver algun detalle mas explicativo que esta corta respuesta en http://msdn.microsoft.com/msdnmag/issues/06/10/wcfessentials/default.aspx En cuanto al caso remoto de Observer preguntas por la interfaz en el cliente? Por abajo se puede implementar un objeto cliente que converse con el objeto Observador que esta en el servidor. En el servidor, el que observa es este objeto, y en cuanto recibe algo, le hace callback al objeto en el cliente. Nos leemos! Angel "Java" Lopez http://www.ajlopez.com/ - Original Message - From: Leandro Tuttini To: patrones List Member Sent: Tuesday, February 20, 2007 9:51 AM Subject: [patrones] Observer Angel que tal. Me dejaste pensando sobre el comentario de WCF y el canal bidireccional. Como se implementaria esto si se tratara de una aplicarlo sobre el protocolo http, sea mediante servicios web. Entiendo que WCF abstrae de la implementacion fisica del servicio, o sea pudiendo cambiar de HTTP, a TCP, o MSQ, etc. En FTP entiendo que el framework deje escuchando en un puerto determinado, pero en http, no me cierra como queda escuchando sobre el puerto 80 sabiendo que este si se encuentra en una WAN seguro un firewall impedira esto. Segun vi el patron observer hace uso de un interfaz para disminuir el acoplamiento si es remoto no me cierra como interviene la interfaz. A que me refiero como registrar la referencia al objeto remoto. Implementar Observer remoto, no seria casi como estar en una arquitertura orientada a eventos? En donde objetos remotos se subscriben a eventos que les interesan. Gracias por la respuesta. Saludos "Angel \"Java\" Lopez" <[EMAIL PROTECTED]> escribió: Hola gente! Tema interesante, respuesta rapidisima... - Ahora con WCF (Windows Communication Framework), podemos implementar un canal bidireccional, entre dos AppDomains, asi que uno puede "escuchar" al otro - El Observer puede servir para alertar a otro sistema o parte de nuestra aplicacion, de algo que le interese. No necesariamente es una presentacion, puede ser, digamos, un sistema de CRM que quiere enterarse que hay una nueva venta... - El Observer local podria igual distribuir remotamente, algun evento... Recuerdo alguna implementacion con Remoting... Podria dejar tambien algo en una cola de mensajeria, para que alguien remoto se entere de algo, por ejemplo el CRM se entere de una nueva venta - Un Observer local podria grabar algo, como un Event Log, o algo de WMI y eso luego ser tomado y procesado mas adelante - Me daria una vuelta por http://www.martinfowler.com/eaaDev/OrganizingPresentations.html http://www.martinfowler.com/eaaDev/MediatedSynchronization.html en caso de no tener miedo a quedarme pegado con todos los temas interesantes que ahi se tratan - Le daria un vistazo a Enterprise Service Bus para un tema mas grande y fascinante... debe haber algo en http://www.ajlopez.net/Busqueda.php?Filtro=esb Y para integracion entre aplicaciones, como siempre www.integrationpatterns.com Nos leemos! Angel "Java" Lopez http://www.ajlopez.com/ - Original Message - From: Leandro Tuttini To: patrones List Member Sent: Monday, February 19, 2007 5:17 PM Subject: [patrones] Observer Que tal, queria plantear la siguiente consulta. Resulta que esto repasando el libro de Larman, UML y Patrones, y me surgen alguans dudas que queria plantear. En muchos ejemplo hace referencia a que el dominio podria hacer uso del patron Observer para enviar alertas a la presentacion, cuando comenta esto lo hace junto a una aplicacion confeccionada en Swing. Esto ultimo me parecio raro ya que a medida que avanza despues habla de distribuido pero hasta dodne se el Observer solo funciona si esta en el mismo AppDomain, o sea presentacion y Dominio corriendo en el mismo proceso. Ahora bien como se aplicaria este mismo concepto si se tratara de una aplicacion distribuida, o web, es viable? Que alternativas hay para que el negocio informe a la presentacion de cambios?. Si no se puede utilizar el observer en con al presentacion, en que otros casos se usaria?, la verdad mucha utilidad no le veo, mejor dicho no encuentro ejemplos mas claros, salvo con al presentacion. Bueno seria esto simplemente. Saludos -- Preguntá. Respondé. Descubrí. Todo lo que querías saber, y lo que ni imaginabas, está en Yahoo! Respuestas (Beta). Probalo ya! -- Preguntá. Respondé. Descubrí. Todo lo que querías saber, y lo que ni imaginabas, está en Yahoo! Respuestas (Beta). Probalo ya!
[patrones] Observer
Angel que tal. Me dejaste pensando sobre el comentario de WCF y el canal bidireccional. Como se implementaria esto si se tratara de una aplicarlo sobre el protocolo http, sea mediante servicios web. Entiendo que WCF abstrae de la implementacion fisica del servicio, o sea pudiendo cambiar de HTTP, a TCP, o MSQ, etc. En FTP entiendo que el framework deje escuchando en un puerto determinado, pero en http, no me cierra como queda escuchando sobre el puerto 80 sabiendo que este si se encuentra en una WAN seguro un firewall impedira esto. Segun vi el patron observer hace uso de un interfaz para disminuir el acoplamiento si es remoto no me cierra como interviene la interfaz. A que me refiero como registrar la referencia al objeto remoto. Implementar Observer remoto, no seria casi como estar en una arquitertura orientada a eventos? En donde objetos remotos se subscriben a eventos que les interesan. Gracias por la respuesta. Saludos "Angel \"Java\" Lopez" <[EMAIL PROTECTED]> escribió: Hola gente! Tema interesante, respuesta rapidisima... - Ahora con WCF (Windows Communication Framework), podemos implementar un canal bidireccional, entre dos AppDomains, asi que uno puede "escuchar" al otro - El Observer puede servir para alertar a otro sistema o parte de nuestra aplicacion, de algo que le interese. No necesariamente es una presentacion, puede ser, digamos, un sistema de CRM que quiere enterarse que hay una nueva venta... - El Observer local podria igual distribuir remotamente, algun evento... Recuerdo alguna implementacion con Remoting... Podria dejar tambien algo en una cola de mensajeria, para que alguien remoto se entere de algo, por ejemplo el CRM se entere de una nueva venta - Un Observer local podria grabar algo, como un Event Log, o algo de WMI y eso luego ser tomado y procesado mas adelante - Me daria una vuelta por http://www.martinfowler.com/eaaDev/OrganizingPresentations.html http://www.martinfowler.com/eaaDev/MediatedSynchronization.html en caso de no tener miedo a quedarme pegado con todos los temas interesantes que ahi se tratan - Le daria un vistazo a Enterprise Service Bus para un tema mas grande y fascinante... debe haber algo en http://www.ajlopez.net/Busqueda.php?Filtro=esb Y para integracion entre aplicaciones, como siempre www.integrationpatterns.com Nos leemos! Angel "Java" Lopez http://www.ajlopez.com/ - Original Message - From: Leandro Tuttini To: patrones List Member Sent: Monday, February 19, 2007 5:17 PM Subject: [patrones] Observer Que tal, queria plantear la siguiente consulta. Resulta que esto repasando el libro de Larman, UML y Patrones, y me surgen alguans dudas que queria plantear. En muchos ejemplo hace referencia a que el dominio podria hacer uso del patron Observer para enviar alertas a la presentacion, cuando comenta esto lo hace junto a una aplicacion confeccionada en Swing. Esto ultimo me parecio raro ya que a medida que avanza despues habla de distribuido pero hasta dodne se el Observer solo funciona si esta en el mismo AppDomain, o sea presentacion y Dominio corriendo en el mismo proceso. Ahora bien como se aplicaria este mismo concepto si se tratara de una aplicacion distribuida, o web, es viable? Que alternativas hay para que el negocio informe a la presentacion de cambios?. Si no se puede utilizar el observer en con al presentacion, en que otros casos se usaria?, la verdad mucha utilidad no le veo, mejor dicho no encuentro ejemplos mas claros, salvo con al presentacion. Bueno seria esto simplemente. Saludos - Preguntá. Respondé. Descubrí. Todo lo que querías saber, y lo que ni imaginabas, está en Yahoo! Respuestas (Beta). Probalo ya! - Preguntá. Respondé. Descubrí. Todo lo que querías saber, y lo que ni imaginabas, está en Yahoo! Respuestas (Beta). Probalo ya!
[patrones] Observer
Hola gente! Tema interesante, respuesta rapidisima... - Ahora con WCF (Windows Communication Framework), podemos implementar un canal bidireccional, entre dos AppDomains, asi que uno puede "escuchar" al otro - El Observer puede servir para alertar a otro sistema o parte de nuestra aplicacion, de algo que le interese. No necesariamente es una presentacion, puede ser, digamos, un sistema de CRM que quiere enterarse que hay una nueva venta... - El Observer local podria igual distribuir remotamente, algun evento... Recuerdo alguna implementacion con Remoting... Podria dejar tambien algo en una cola de mensajeria, para que alguien remoto se entere de algo, por ejemplo el CRM se entere de una nueva venta - Un Observer local podria grabar algo, como un Event Log, o algo de WMI y eso luego ser tomado y procesado mas adelante - Me daria una vuelta por http://www.martinfowler.com/eaaDev/OrganizingPresentations.html http://www.martinfowler.com/eaaDev/MediatedSynchronization.html en caso de no tener miedo a quedarme pegado con todos los temas interesantes que ahi se tratan - Le daria un vistazo a Enterprise Service Bus para un tema mas grande y fascinante... debe haber algo en http://www.ajlopez.net/Busqueda.php?Filtro=esb Y para integracion entre aplicaciones, como siempre www.integrationpatterns.com Nos leemos! Angel "Java" Lopez http://www.ajlopez.com/ - Original Message - From: Leandro Tuttini To: patrones List Member Sent: Monday, February 19, 2007 5:17 PM Subject: [patrones] Observer Que tal, queria plantear la siguiente consulta. Resulta que esto repasando el libro de Larman, UML y Patrones, y me surgen alguans dudas que queria plantear. En muchos ejemplo hace referencia a que el dominio podria hacer uso del patron Observer para enviar alertas a la presentacion, cuando comenta esto lo hace junto a una aplicacion confeccionada en Swing. Esto ultimo me parecio raro ya que a medida que avanza despues habla de distribuido pero hasta dodne se el Observer solo funciona si esta en el mismo AppDomain, o sea presentacion y Dominio corriendo en el mismo proceso. Ahora bien como se aplicaria este mismo concepto si se tratara de una aplicacion distribuida, o web, es viable? Que alternativas hay para que el negocio informe a la presentacion de cambios?. Si no se puede utilizar el observer en con al presentacion, en que otros casos se usaria?, la verdad mucha utilidad no le veo, mejor dicho no encuentro ejemplos mas claros, salvo con al presentacion. Bueno seria esto simplemente. Saludos -- Preguntá. Respondé. Descubrí. Todo lo que querías saber, y lo que ni imaginabas, está en Yahoo! Respuestas (Beta). Probalo ya!
[patrones] Observer
Que tal, queria plantear la siguiente consulta. Resulta que esto repasando el libro de Larman, UML y Patrones, y me surgen alguans dudas que queria plantear. En muchos ejemplo hace referencia a que el dominio podria hacer uso del patron Observer para enviar alertas a la presentacion, cuando comenta esto lo hace junto a una aplicacion confeccionada en Swing. Esto ultimo me parecio raro ya que a medida que avanza despues habla de distribuido pero hasta dodne se el Observer solo funciona si esta en el mismo AppDomain, o sea presentacion y Dominio corriendo en el mismo proceso. Ahora bien como se aplicaria este mismo concepto si se tratara de una aplicacion distribuida, o web, es viable? Que alternativas hay para que el negocio informe a la presentacion de cambios?. Si no se puede utilizar el observer en con al presentacion, en que otros casos se usaria?, la verdad mucha utilidad no le veo, mejor dicho no encuentro ejemplos mas claros, salvo con al presentacion. Bueno seria esto simplemente. Saludos - Preguntá. Respondé. Descubrí. Todo lo que querías saber, y lo que ni imaginabas, está en Yahoo! Respuestas (Beta). Probalo ya!