Ver también How does a WCF server inform a WCF client about changes? (Better solution then simple polling, e.g. Coment or long polling)WCF push to client through firewall?
necesito utilizar la tecnología push-con WCF a través de cortafuegos cliente. Este debe ser un problema común, y sé con certeza que funciona en teoría (ver los enlaces a continuación), pero no lo he conseguido, y no he podido encontrar una muestra de código que lo demuestre.
Requisitos:
- WCF
- clientes se conecta al servidor a través del puerto TCP 80 (netTcpBinding).
- El servidor restituye la información a intervalos irregulares (de 1 minuto a varias horas).
- Los usuarios no deberían tener que configurar sus firewalls, los servidores deben pasar a través de firewalls que tienen todos los puertos entrantes cerrados. Para esto se necesita duplex TCP en la misma conexión, una vinculación dual no funciona ya que se debe abrir un puerto en el firewall del cliente.
- Los clientes envían heartbeats al servidor a intervalos regulares (quizás cada 15 minutos) para que el servidor sepa que el cliente aún está activo.
- El servidor es IIS7 con WAS.
La solución parece ser duplex netTcpBinding. Sobre la base de esta información:
WCF through firewalls and NATs
Keeping connections open in IIS
Pero todavía tengo que encontrar un ejemplo de código que funciona .. He intentado combinar el "Duplex" y "muestras" de TcpActivation muestras WCF de Microsoft sin suerte Por favor, alguien me puede indicar un código de ejemplo que funcione, o crear una pequeña aplicación de muestra. ¡Muchas gracias!
¿Está encontrando ningún tipo de excepciones? ¿Qué es exactamente lo que no está funcionando? – jrista