2009-06-21 6 views
21

Quelqu'un at-il des informations sur la gestion de l'état dans Azure lorsque vous choisissez d'avoir plusieurs instances? Il semble qu'InProc soit sans valeur et que vous deviez avoir une autre instance de serveur d'état, ou utiliser le magasin de données pour stocker l'état des utilisateurs sur les serveurs. Ou est-ce qu'il met en œuvre des sessions collantes, donc InProc est tout ce dont vous avez besoin.Comment Microsoft Azure gère-t-il l'état de session?

trouvé la réponse ici: Azure Forums

+0

Ce lien est nul, est-ce que quelqu'un sait si cette information est ailleurs? – andynormancx

+0

Voir ma réponse ci-dessous, avec des liens vers la FAQ Cache ainsi qu'un lien vers les détails sur les nouveaux fournisseurs Universal ASP.NET (le nouveau fournisseur d'état de session prend en charge SQL Azure nativement). –

Répondre

18

Table de stockage serait l'endroit le plus logique. Les autres configurations de type de batterie de serveurs utilisent également une table de base de données pour stocker les informations de session.

Jetez un coup d'œil au projet AspProviders dans les exemples de Windows Azure SDK. Il a un fournisseur SessionState qui utilise Azure Table Storage.

+0

Puisque vous payez par transaction avec le stockage de table, je me demande si SQL Azure serait meilleur d'un point de vue économique puisque vous payez juste pour la bande passante (en plus de la DB elle-même). –

+6

Je suis assez sûr que le stockage de table est le choix le plus économique. 1 Go SQL Azure est de 9,99 $ par mois. Vous pouvez stocker 1 Go dans le stockage de table pour 15 cents. Les transactions sont de 10 000 pour un cent, alors avec les 9,84 $ restants, vous pourriez obtenir 9,84 millions de transactions. Donc, si vous avez plus de 10 millions de transactions par mois, SQL Azure serait moins cher.Les frais de transfert de données ne sont payés que pour les données dans/hors d'Azure, les données de session ne doivent donc pas être soumises à ces coûts. – CoderDennis

+0

Mais comment supprimer les anciennes informations de session de la table et du stockage BLOB? – joe

2

Ne nécessitant pas l'affinité de session et donc l'utilisation de fournisseurs d'état de session qui s'appuient sur Azure storage ou SQL Azure storage est le meilleur choix.

Pour certaines applications héritées, vous pouvez toujours avoir besoin d'une affinité de session. Pour ces cas, ARR entre Azure load balancer et Web farm est une option.

Plus de détails à http://go.archims.fr/hW54Xz

13

AppFabric Cache juste allé dans la production, ce qui est une excellente façon de gérer les données de session. En fait, il a un fournisseur d'état de session personnalisé qui tombe simplement dans web.config. Vous le trouverez dans le portail Azure.

Toutes les informations sur les tailles de cache, les tarifs et le SLA sont les suivantes: here.

Modifier: Les modèles de rôle Web Windows Azure incluent désormais les nouveaux fournisseurs Universal ASP.NET, y compris un fournisseur d'état de session prenant en charge SQL Azure. Jetez un oeil à blog post de Nate Totten pour plus de détails. Windows Azure fournit désormais un 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 «gratuite» si vous n'avez pas besoin de beaucoup de RAM dans votre application).

Questions connexes