Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Blog Technique de Romelard Fabrice

Les dernières Actualités de Romelard Fabrice (Alias fabrice69 ou F___) principalement autour des technologies Microsoft

Actualités

  • Toutes les actualités et informations sur les technologies Microsoft principalement autour de .NET et SQL Server

Archives

SharePoint : Modification des Headers Entity Tags (ETags) dans IIS

Dans la continuité des modifications permettant d’améliorer les performances d’une ferme SharePoint, nous allons voir le cas particulier de l’entête HTTP ETag :

Ce paramètre ajouté directement par le serveur WEB permet d’avoir une “datation” du flux envoyé par celui-ci.

L’idée est donc de permettre au client WEB la possibilité de comparer directement la date de chargement de deux objets. Si on trouve une différence entre ces deux objets, un rechargement est fait, sinon le cache du navigateur est utilisé.

On trouve une explication de ce mécanisme avec Internet Explorer :


Problème en cas de clustering

Dans le cas d’une ferme SharePoint, on peut avoir plusieurs Web Front End qui vont donc répartir la charge WEB entre chaque machine (que ce soit via NLB, BigIP ou autre).

La valeur Etag peut être spécifique à un serveur et host, ce qui fait que, suivant la machine qui nous répond, la valeur de cet Etag pour un même objet ne sera pas la même et donc Internet Explorer effectuera un rechargement de l’objet.

A ce moment on comprend que le cache coté utilisateur n’est plus utilisé de manière optimale à cause de ce test et de cette différence de valeur qui n’a aucun rapport avec la fraicheur du contenu côté serveur


Solution

La solution alternative est donc de bloquer cette option sur chaque application WEB de chaque serveur placé dans le cluster WEB. Pour faire simple, on va forcer la valeur de cet entête à vide.

Pour cela, il faut se connecter sur chacun des serveurs Web Front End de la ferme et ouvrir IIS Manager, on va cliquer avec le bouton droit sur une des Applications Web de la ferme et choisir “Properties” :

Untitled

On va alors sélectionner la rubrique “HTTP Headers” et cliquer sur “Add” dans la partie “Custom HTTP headers” :

Untitled2

On va donc remplir les champs :

  • Custom header name: Etag
  • Custom header value: [vide]

Untitled3

On valide par OK et on applique la modification, qui va nous demander si on applique celle-ci sur tous les répertoires virtuels ou non :

Untitled4

on clique sur OK et on confirme ce changement.


Conclusion

Une fois appliquée sur toutes les Web Applications de tous les serveurs WEB de la ferme SharePoint, l’option Etag ne sera plus utilisée par le navigateur et vous éviterez des rechargements inutiles d’objet gérés par IIS.


Attention:

Cette modification ne sera prise en compte que pour les objets gérés par IIS. En effet, SharePoint gère aussi un flag HTTP Header ETag, comme on peut le voir sur la capture suivante :

Untitled5

La valeur est alors sous un format spécifique géré par SharePoint et non plus IIS et sera la même pour chaque objet provenant de n’importe quel Web Front End.


Romelard Fabrice [MVP]

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: mercredi 15 septembre 2010 18:08 par ROMELARD Fabrice

Commentaires

Pas de commentaires

Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- SharePoint 2013: Préparation de la migration - Création des site Templates dans 2010 et 2013 par Blog Technique de Romelard Fabrice le 08-20-2014, 16:31

- [ #Yammer ] How to change interface language ? Comment changer la langue de l’interface ? par Le blog de Patrick [MVP SharePoint] le 08-20-2014, 14:21

- Onedrive Sync Engine Host : CPU à 100% par Le petit blog de Pierre / Pierre's little blog le 08-06-2014, 22:22

- SharePoint : Bug sur la gestion des permissions et la synchronisation Office par Blog Technique de Romelard Fabrice le 07-10-2014, 11:35

- SharePoint 2007 : La gestion des permissions pour les Workflows par Blog Technique de Romelard Fabrice le 07-08-2014, 11:27

- TypeMock: mock everything! par Fathi Bellahcene le 07-07-2014, 17:06

- Coding is like Read par Aurélien GALTIER le 07-01-2014, 15:30

- Mes vidéos autour des nouveautés VS 2013 par Fathi Bellahcene le 06-30-2014, 20:52

- Recherche un passionné .NET par Tkfé le 06-16-2014, 12:22

- [CodePlex] Projet KISS Workflow Foundation lancé par Blog de Jérémy Jeanson le 06-08-2014, 22:25