2012-02-17 18 views
5

En el momento de la conexión, asigno el clientID a otro cliente e información de suscripción que construyo en una variable estática. Esto funciona bien hasta que el grupo de aplicaciones se recicla o recompilo y luego pierdo mis asignaciones.SignalR: Cómo recuperar la información del cliente después de reciclar el grupo de aplicaciones

Las conexiones de cliente persisten después de que el grupo de aplicaciones se recicla, pero no veo nada en los métodos OnConnectAsync() ni OnReceivedAsync().

Veo en Firebug que mis clientes me envían un nuevo POST cada 4 minutos. ¿Hay algún evento SignalR que pueda anular para capturar la POST entrante y reconstruir la asignación de mi cliente para las conexiones persistentes actuales?

Gracias.

Respuesta

4

Asegúrese de estar utilizando SignalR 0.4. Puede manejar OnReconnectedAsync.

https://github.com/SignalR/SignalR/wiki/PersistentConnection

AVISO: Si guarda su estado de aplicación de las variables estáticas que nunca será capaz de escalar a cabo en una granja (pero tal vez no les importa).

+0

¿Hora para Redis o memoria caché? ;-) –

+0

¿Sigue siendo relevante para 1.1.2? Tenemos un problema con SignalR que no sobrevive al reciclaje del grupo de aplicaciones. – Anders

+0

LongPolling no vuelve a conectar el servidor en el reciclado del grupo de aplicaciones, pero el señalizador se reconecta muy bien. – davidfowl

Cuestiones relacionadas