Comment Microsoft Azure gère-t-il l'état de session?
-
06-07-2019 - |
Question
Quelqu'un a-t-il des informations sur la gestion de l'état dans Azure lorsque vous choisissez de disposer de plusieurs instances? Il semble qu'InProc serait sans valeur et que vous deviez disposer d'une autre instance de serveur d'état ou utiliser le magasin de données pour stocker l'état des utilisateurs sur tous les serveurs.
Ou bien met-il en place des sessions persistantes, InProc est donc tout ce dont vous avez besoin.
Vous avez trouvé la réponse ici: Forums Azure
La solution
Le stockage sur table serait l'endroit le plus logique. Les autres configurations de type batterie de serveurs utilisent également une table de base de données pour stocker les informations de session.
Examinez le projet AspProviders dans les exemples du kit de développement logiciel (SDK) Windows Azure. Il a un fournisseur SessionState qui utilise Azure Table Storage.
Autres conseils
Le cache AppFabric est entré en production et constitue un excellent moyen de gérer les données de session. En fait, il a un fournisseur d’état de session personnalisé qui passe simplement dans web.config. Vous le trouverez sur le portail Azure.
Toutes les informations concernant la taille du cache, les tarifs et les contrats de niveau de service sont ici .
Modifier : les modèles de rôle Web Windows Azure incluent désormais les nouveaux fournisseurs universels ASP.NET, y compris un fournisseur d'état de session prenant en charge SQL Azure. Jetez un coup d'œil à la article de blog de Nate Totten pour plus d'informations. détails.
EDIT 7/8/2012 Windows Azure fournit désormais un rôle de cache et un cache en mémoire (tous deux facilement configurables avec les derniers outils et le SDK v1.7). Le cache en mémoire répartit le cache sur l’une de vos instances de rôles existantes, en utilisant un pourcentage défini de RAM (option intéressante "gratuite" si vous n'avez pas besoin de beaucoup de RAM dans votre application).
Ne nécessite pas d'affinité de session et utilise donc des fournisseurs d'état de session qui reposent sur le stockage Azure
ou le stockage SQL Azure
est le meilleur choix.
Pour certaines applications existantes, vous aurez peut-être encore besoin d'une affinité de session. Dans ces cas, l'ARR entre l'équilibreur de charge Azure
et la batterie de serveurs Web
est une option.
Plus de détails sur http://go.archims.fr/hW54Xz
Une autre option consisterait à utiliser des sessions http persistantes:
http://dunnry.com/blog/2010/10/14/ StickyHTTPSessionRoutingInWindowsAzure.aspx
Ensuite, vous pouvez utiliser InProc.