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

<<Emoticon1.gif>>

Responder a