Partager via


Fonctionnement de la mise en cache côté serveur dans Power Pages

Afin d’améliorer l’évolutivité et les performances, les sites web Power Pages mettent en cache les données interrogées depuis Microsoft Dataverse. Cette mise en cache est effectuée sur le serveur d’application pour toutes les données d’entreprise et les métadonnées du site web et est différente de la mise en cache des ressources statiques basée sur le navigateur ou sur le réseau de distribution de contenu.

La mise en cache côté serveur est effectuée pour deux types de tables décrites ci-dessous :

Tables de métadonnées/configuration

Les tables de métadonnées/configuration représentent toutes les tables qui stockent les informations de configuration du site web telles que les pages web, les modèles web, les extraits de contenu, etc.

Les tableaux suivants sont considérés comme des tables de configuration. Cette liste est fixe et ne peut être modifiée par aucune configuration.

Note

  • Les tables utilisées pour la configuration du site varient selon que le site a été configuré à l’aide du modèle de données standard ou amélioré. Voir Modèle de données amélioré pour en savoir plus.
  • Ces tables ne peuvent pas être modifiées.
Table système Table virtuelle de modèle de données améliorée Table de modèle de données standard
powerpagesite mspp_website adx_website
powerpagesitelanguage mspp_websitelanguage adx_websitelanguage
powerpagecomponent mspp_columnpermission
mspp_columnpermissionprofile
mspp_contentsnippet
mspp_entityform
mspp_entityformmetadata
mspp_entitylist
mspp_entitypermission
mspp_pagetemplate
mspp_pollplacement
mspp_publishingstate
mspp_publishingstatetransitionrule
mspp_redirect
mspp_shortcut
mspp_sitemarker
mspp_sitesetting
mspp_webfile
mspp_webform
mspp_webformmetadata
mspp_webformstep
mspp_weblink
mspp_weblinkset
mspp_webpage
mspp_webpageaccesscontrolrule
mspp_webrole
mspp_websiteaccess
mspp_websitelanguage
mspp_webtemplate
adx_columnpermission
adx_columnpermissionprofile
adx_contentsnippet
adx_entityform
adx_entityformmetadata
adx_entitylist
adx_entitypermission
adx_pagetemplate
adx_pollplacement
adx_publishingstate
adx_publishingstatetransitionrule
adx_redirect
adx_shortcut
adx_sitemarker
adx_sitesetting
adx_webfile
adx_webform
adx_webformmetadata
adx_webformstep
adx_weblink
adx_weblinkset
adx_webpage
adx_webpageaccesscontrolrule
adx_webrole
adx_websiteaccess
adx_websitelanguage
adx_webtemplate

Toutes les données de la table de configuration sont identiques pour tous les utilisateurs et sont automatiquement mises en cache. Ce cache de données de configuration pour n’importe quelle table est mis à jour automatiquement lorsqu’un enregistrement est modifié. La mise à jour automatique du cache est accompagnée d’un contrat de niveau de service de 15 minutes. Toute modification apportée à un enregistrement de configuration est automatiquement disponible sur le site web dans les 15 minutes.

Toutefois, si les modifications d’enregistrement sont nécessaires immédiatement, vous pouvez explicitement vider le cache à l’aide des options suivantes ;

Option Informations
Studio de conception Sélectionner l’option Version préliminaire sur le studio de conception efface le cache.
/_services/about page sur le site web Utilisez l’option effacer la configuration ou vider le cache en naviguant sur le site web avec ’/_services/about’ ajouté à l’URL du site web. Pour afficher ces options, l’utilisateur doit avoir un rôle web avec toutes les autorisations d’accès au site web attribuées.

Effacez le cache.

Note

Mettre à jour des données dans les tables de configuration ou invoquer le cache vide ou les actions de configuration doit être effectué pendant les heures creuses. Des changements de table fréquents ou trop nombreux peuvent affecter les performances du site web.

Toutes les tables de configuration doivent être activées pour la notification de modification dans l’organisation. La notification de modification est définie correctement par défaut et ne doit pas être modifiée.

Tables de données

Les tables de données représentent toutes les tables Dataverse qui stockent les données commerciales affichées sur le site web. Ces données sont généralement mises en cache par utilisateur, sauf dans certains cas, comme les utilisateurs anonymes ou les tables avec autorisation globale. De plus, seules les données consultées par l’utilisateur sur le site web sont mises en cache et non les données de la table entière.

Ce cache est mis à jour via plusieurs mécanismes décrits ci-dessous :

  • Tout enregistrement pour une table (ou une table associée) est créé, mis à jour ou supprimé sur le site web par tout utilisateur du site web. L’action efface instantanément le cache de tous les utilisateurs du site Web pour cette table spécifique.

  • Le cache est effacé automatiquement dans les 15 minutes même si aucune modification n’est apportée.

  • Le cache est vidé manuellement via les options suivantes :

    Option Informations
    Studio de conception Sélectionner l’option Version préliminaire sur le studio de conception efface le cache.
    /_services/about page sur le site web Utilisez l’option effacer la configuration ou vider le cache en naviguant sur le site web avec ’/_services/about’ ajouté à l’URL du site web. Pour afficher ces options, l’utilisateur doit avoir un rôle web avec toutes les autorisations d’accès au site web attribuées.

Note

L’option d’effacement du cache doit être rarement utilisée, car elle efface le cache de toutes les tables de données ainsi que des tables de configuration et peut entraîner un ralentissement temporaire. Pour les sites en direct avec une utilisation intensive, cela peut entraîner des problèmes de performances pour les utilisateurs.

Questions fréquentes (FAQ)

  1. Puis-je modifier la durée d’actualisation du cache de 15 minutes à une durée moindre ?

    Non. Le contrat SLA pour l’actualisation du cache reste 15 minutes. Toute modification de Dataverse s’affiche sur le site web dans les 15 minutes pour les tables de données et les tables de configuration.

  2. J’utilise des plugins ou des flux de travail pour mettre à jour les données dans d’autres tables et j’ai besoin que ces modifications de données soient immédiatement reflétées sur mon site web.

    Cette approche de conception n’est pas recommandée. À l’exception de l’enregistrement principal où l’action de création ou de mise à jour est déclenchée, la réflexion des données de Dataverse vers les sites web n’est jamais garantie d’être immédiate.

  3. Existe-t-il une différence de mise en cache entre les sites web basés sur la capacité et les portails complémentaires ?

    Non

  4. Combien de temps faut-il pour que les modifications soient répercutées d’un site web vers Dataverse ?

    Immédiatement, tant que la mise à jour modifie un enregistrement principal et n’est pas basée sur des modifications indirectes des données à l’aide de plugins ou de workflows après l’opération.