Où les assemblys sont-ils déployés dans les solutions en bac à sable (sandbox) ?
Cette rubrique décrit où et comment les assemblys sont déployés dans les solutions en bac à sable (sandbox).
Dernière modification : jeudi 17 novembre 2011
S’applique à : SharePoint Foundation 2010
Disponible dans SharePoint Online
Le fait que les solutions en bac à sable (sandbox) ne puissent pas déployer des fichiers dans le système de fichiers d'un serveur soulève la question de l'endroit auquel les assemblys sont déployés et conservés dans ces solutions en bac à sable (sandbox).
Notes
Le contenu du fichier .package dans une solution en bac à sable (sandbox) ouverte dans Microsoft Visual Studio indique que le Global Assembly Cache (GAC) est la cible de déploiement des assemblys dans les solutions en bac à sable (sandbox). Comme cette rubrique l’explique clairement, ce n’est pas le cas.
Déploiement et persistance des solutions en bac à sable (sandbox)
Les assemblys compris dans une solution en bac à sable (sandbox) sont inclus dans le package de solution (fichier .wsp file), puis le package est déployé dans la galerie de solutions de la collection de sites. Lors du premier accès à une solution en bac à sable (sandbox), notamment lorsqu’un utilisateur navigue vers une page qui contient un composant WebPart provenant d’une solution en bac à sable (sandbox), tous les assemblys de la solution sont extraits du package dans la galerie et copiés dans le système de fichiers du serveur qui gère la requête en sandbox. L’emplacement est C:\ProgramData\Microsoft\SharePoint\UCCache. Le fichier exécutable de ce service est SPUCHostService.exe. Le serveur qui gère la requête en sandbox n’est pas nécessairement le serveur Web frontal qui gère la requête HTTP initiale : il est possible de démarrer le Service de code en mode bac à sable Microsoft SharePoint Foundation sur des serveurs d’applications principaux de la batterie de serveurs. Étant donné que le processus utilisateur en sandbox (SPUCWorkerProcess.exe) ne peut rien copier sur le système de fichiers, la copie est effectuée par le Service de code en mode bac à sable Microsoft SharePoint Foundation.
Les assemblys d'une solution en bac à sable (sandbox) ne restent pas définitivement dans le cache de fichiers. Quand l'utilisateur met fin à la session qui a accédé à la solution, les assemblys restent dans le cache pendant un court instant seulement, et il est possible de les recharger depuis ce cache si une autre session utilisateur y accède. Finalement, en l'absence d'accès aux assemblys, ceux-ci sont supprimés conformément à un algorithme propriétaire qui prend en compte l'occupation du serveur et le temps écoulé depuis le dernier accès à ces assemblys. Si la solution en bac à sable (sandbox) est utilisé à l'issue de ce temps, les assemblys sont de nouveau extraits et copiés dans le UCCache.
Attention |
---|
Les administrateurs, les développeurs et le code tiers ne doivent effectuer aucun ajout, aucune suppression ni aucun chargement à partir du UCCache. Seule l'infrastructure SharePoint doit y accéder. |
Voir aussi
Concepts
Installation, désinstallation et mise à niveau des solutions en bac à sable (sandbox)
Meilleures pratiques en matière de développement de solutions bac à sable (sandbox)
Qu'est-ce qui peut être implémenté dans une solution en bac à sable (sandbox) ?