Normalmente, el acceso a los trabajadores de Azure se realiza a través de puntos finales definidos en la definición del servicio. Estos puntos finales, que deben ser TCP o HTTP (S), se pasan a través de un equilibrador de carga y luego se conectan a la IP/puerto real de las máquinas Azure.Acceso directo a los trabajadores de Azure; puenteando el equilibrador de carga
Mi aplicación se beneficiaría drásticamente del uso de UDP, ya que me estoy conectando desde dispositivos celulares donde los bytes se cuentan para facturación y los gastos generales de SYN/ACK/FIN empequeñecen los paquetes de 8 bytes que estoy enviando. Incluso he considerado poner mis datos directamente en los encabezados de los mensajes ICMP. Sin embargo, nada de esto es compatible con el equilibrador de carga.
Sé que puede habilitar el ping en máquinas virtuales Azure y luego hacerles ping - http://weblogs.thinktecture.com/cweyer/2010/12/enabling-ping-aka-icmp-on-windows-azure-roles.html.
¿Hay algo que me impida usar un servicio basado en TCP (expuesto a través del equilibrador de carga) que simplemente entregue una dirección IP y puerto de una dirección Azure VM, y luego la aplicación se comunique directamente con ese trabajador? (Tendré que encargarme del equilibrio de carga). Si el trabajador se cierra o se mueve, mi aplicación será lo suficientemente inteligente como para volver a conectarse al punto final TCP y solicitar un nuevo lugar para enviar datos.
¿Funciona este concepto, o hay algo para evitar este tipo de acceso directo?
¿El papel no tiene una dirección IP accesible desde el exterior? –
IOW, ¿puedo de alguna manera abrir un puerto UDP y luego conectarme a él aunque el equilibrador de carga no admita UDP? (Aunque de una manera sin carga equilibrada) –
No se admite UDP sin utilizar Windows Azure Connect. Por lo tanto, solo tiene unas pocas opciones para llegar a una instancia específica de manera confiable: 1.) escriba un reenviador de socket (vea el ejemplo de mi blog), 2.) use ARR - buena opción para HTTP, o 3.) Use Windows Azure Connect. Sin embargo, solo el último ejemplo será compatible con UDP. Si UDP es su único objetivo aquí, esa es su única opción hoy. – dunnry