Lors du développement de votre site web, vous serez probablement amenés à utiliser l’objet Session pour y stocker des variables. Et, pour augmenter les performances de votre site, vous pourriez augmenter le nombre de processus de travail dans IIS (Web garden).
Cependant, par défaut, ces deux paramètres sont incompatibles.
En effet, pour résumer de façon simple, on peut dire que les variables de session seront parfois stockées dans l’objet Session de l’un des processus, puis parfois dans l’objet Session d’un autre processus.
Exemple :
MonObjet monObjet = (MonObjet)(Session[MOT_CLE]); // Va être null « une fois sur deux » si vous avez deux processus de travail.
Pour éviter ce problème, il faut changer le mode d'état de session (sessionState) et le mettre en mode « StateServer », puis réaliser quelques opérations supplémentaires.