Perder Estado de Sesión con ASP.NET / Servidor SQL

Tengo un flujo de trabajo MVC de ASP.NET configurado como dos sitios web administrados por un equilibrador de carga. Los sitios web utilizan Sql Server como proveedor de estado de sesión y tienen desactivado la autenticación (no es necesario).

Ahora, esporádicamente parece que estoy perdiendo el estado de la sesión, y creo que esto se debe a que la solicitud está siendo manejada por el servidor alternativo, por lo que esencialmente el usuario está saltando de un servidor a otro, dependiendo de cómo se ajuste el equilibrador de carga. No siempre estoy "perdiendo el estado de sesión" en la misma etapa del flujo de trabajo, por lo que creo que es algo relacionado con la configuración de la granja de servidores web + estado de sesión del servidor SQL.

Ambas aplicaciones utilizan la misma clave de máquina para cifrar y descifrar el estado de la sesión almacenada en el servidor SQL.

La configuración en ambos servidores es la siguiente:

<code><authentication mode="None" />
<sessionState mode="SQLServer" sqlConnectionString="{connection-string}" />
<machineKey decryptionKey="777CB456774AF02F7F1AC8570FAF31545B156354D9E2DAAD" 
            validationKey="89B5B536D5D17B8FE6A53CBB3CA8B8695289BA3DF0B1370BC47D362D375CF91525DDB5307D8A288230DCD4B3931D23AED4E223955C45CFF2AF66BCC422EC7ECD" />
</code>

He confirmado que esto es idéntico en ambos servidores, ¿hay algo que me esté perdiendo?

Esto no ocurre en mi entorno de desarrollo cuando estoy usando un solo servidor.

Me temo que estoy sufriendo los blues del viernes, y sin duda descubriré la respuesta la próxima semana, ¡lamentablemente no quiero esperar!

¿Algunas ideas?

Respuestas a la pregunta(3)

Su respuesta a la pregunta