Liste de contrôle des meilleures pratiques
Headless Commerce avec Salesforce Commerce API
Présentation de PWA Kit
Présentation de Managed Runtime
Managed Runtime API
Matrice de compatibilité des PWA Kit
Les compétences pour réussir
Ask the Community
News: PWA Kit 3.0.0 est maintenant disponible avec la prise en charge de Node 18. Mettez à jour vos projets et vos environnements pour maintenir les fonctionnalités. Vous ne pourrez pas déployer votre site avec des versions antérieures.
Important
Managed Runtime fournit l’infrastructure nécessaire pour déployer, héberger et surveiller votre boutique PWA Kit.
Managed Runtime prend uniquement en charge les applications créées à partir d’un modèle PWA Kit. Le code source des modèles disponibles se trouve dans les dossiers template-* du référentiel PWA Kit sur GitHub.
Important
Ce guide couvre les principales parties de Managed Runtime et les moyens d’y accéder.
Avant de pouvoir utiliser Managed Runtime et Runtime Admin, ils doivent être activés et vous devez demander d’y avoir accès. Pour activer Managed Runtime et Runtime Admin pour votre organisation, contactez l’équipe de votre compte Salesforce. Pour y accéder, demandez à votre administrateur Commerce Cloud d’ajouter l’un des rôles suivants à votre compte à l’aide d’Account Manager : Managed Runtime User (Utilisateur Managed Runtime) ou Managed Runtime Admin (Administrateur Managed Runtime).
Important
Un environnement est le terme utilisé pour décrire l’ensemble de l’infrastructure cloud et des valeurs de configuration pour une boutique particulière hébergée par Managed Runtime. Les environnements sont utilisés pour séparer votre boutique de production des autres boutiques déployées à d’autres fins, comme le développement ou les tests.
Dans l’API Managed Runtime, les environnements sont appelés « targets », soit cibles, mais ces deux termes désignent la même chose.
Note
Comme les environnements fonctionnent sur des microservices très efficaces qui montent et descendent automatiquement en charge, vous pouvez créer autant d’environnements que vous le souhaitez sans frais supplémentaires. Vous pouvez par exemple créer un environnement éphémère dédié à un seul sprint de développement agile ou à un seul récit d’utilisateur dans ce sprint. Si vous n’avez plus besoin d’un environnement, nous vous encourageons à le supprimer.
Les environnements indiqués comme environnements de production sont sur la liste de surveillance prioritaire de l’équipe de Support de Salesforce. Pour les environnements de production, vous pouvez également déboguer à l’aide de Log Center. Pour indiquer un environnement comme un environnement de production, vous avez deux possibilités :
is_production. Pour indiquer un environnement comme environnement de production avec ces points de terminaison, configurez le paramètre is_production comme true.Par défaut, vous pouvez indiquer jusqu’à 10 environnements en production. Pour augmenter votre limite, contactez le Support.
Important
Le code de la boutique qui s’exécute sur un environnement est appelé un paquet. Utilisez les outils de développement inclus dans le PWA Kit pour générer un paquet et l’envoyer à Managed Runtime en mode push.
Un paquet est un instantané de votre code à un moment précis dans le temps. Il est immuable : une fois qu’un paquet a été créé, il ne peut plus être modifié. Cet historique complet et précis des paquets facilite la résolution de problèmes lors du déploiement.
Note
Après avoir envoyé le paquet en push, vous pouvez utiliser Runtime Admin ou l’API Managed Runtime pour désigner ce paquet comme « déployé ». Chaque projet peut avoir plusieurs paquets, mais chaque environnement ne peut avoir qu’un seul paquet désigné comme déployé. Vous pouvez modifier à tout moment le paquet désigné comme déployé. Pour en savoir plus, reportez-vous à la section Envoyer en Push et déployer des paquets.
Pour vous aider à gérer plusieurs environnements, chaque environnement appartient également à un projet et chaque projet appartient à une organisation. Une organisation peut contenir plusieurs projets pour plusieurs boutiques en ligne et chaque projet peut contenir plusieurs environnements. Un utilisateur de Managed Runtime peut appartenir à plusieurs organisations afin de séparer différents flux de travail.
Chaque organisation peut avoir un maximum de 100 environnements au total et un maximum de 10 environnements de production. Si vous devez augmenter ces limites, contactez votre représentant du support Salesforce.
Les organisations et l’appartenance des utilisateurs aux organisations sont déterminées par les paramètres dans Account Manager. Un utilisateur peut appartenir à une organisation en tant que membre ou en tant qu’administrateur. Les membres ne peuvent interagir qu’avec les projets de Managed Runtime pour lesquels un rôle leur a été attribué. Les administrateurs peuvent interagir avec tous les projets d’une organisation.
Pour attribuer l’appartenance à l’organisation administrateur à un utilisateur, contactez le Support Salesforce.
Important
Un utilisateur peut disposer des capacités suivantes pour un projet Managed Runtime :
Chaque utilisateur se voit attribuer un rôle qui détermine les possibilités dont il dispose. (Un utilisateur ne peut avoir qu’un seul rôle). Les rôles d’un projet peuvent être attribués à n’importe quel utilisateur au sein d’une organisation.
Le tableau suivant montre quelles capacités sont associées à chaque rôle :
| Rôle | , parcourir | , gérer les redirections | , déployer | , gérer les journaux d’accès de l’équipe | , afficher et gérer les variables d’environnement | |
|---|---|---|---|---|---|---|
| Admin | Oui | Oui | Oui | Oui | Oui | Oui |
| Developer (Développeur) | Oui | Oui | Oui | Non | Oui | Oui |
| Marketer (Expert en marketing) | Oui | Oui | Non | Non | Non | Non |
| Read Only (Lecture seule) | Oui | Non | Non | Non | Non | Non |
Au sein de chaque environnement Managed Runtime, l’application React du paquet publié s’exécute dans un environnement Node.js. Pour répondre aux requests de pages et rendre les résultats, nous utilisons le framework Web Express avec l’aide des systèmes de rendu et de routage de PWA Kit. Nous appelons cette combinaison de React, Node et Express le serveur d’applications. (Bien que, techniquement parlant, le serveur d’applications fonctionne sur une technologie « serverless »). Ce serveur d’applications est optimisé pour fonctionner sur une infrastructure cloud qui offre de faibles coûts de traitement informatique, une haute disponibilité, un rendu rapide et une très grande évolutivité.
Comme le système de rendu et de routage de PWA Kit gère les différences entre les environnements de développement locaux et les environnements Managed Runtime, votre code s’exécute de manière prévisible lorsque vous le déployez. Cette prévisibilité stimule la productivité de votre équipe de développement en l’incitant à déployer des paquets plus fréquemment.
Actuellement, le serveur d’applications prend en charge les versions 1.2 et supérieures du protocole Transport Layer Security (TLS).
Le code qui s’exécute sur le serveur d’applications a accès aux variables d’environnement suivantes :
DEPLOY_TARGET : l’identifiant de l’environnement.EXTERNAL_DOMAIN_NAME : le nom de domaine défini sur l’environnement.MOBIFY_PROPERTY_ID : l’identifiant du projet auquel l’environnement appartient.Le serveur d’applications est supporté par plusieurs services périphériques, notamment :
Le serveur proxy et le CDN sont traités en détail dans notre guide sur Requests via proxy. La fonction périphérique appelée request processor est traitée dans notre guide Maximiser votre taux d’accès au cache.
Les services périphériques de Managed Runtime sont répartis de façon stratégique dans notre infrastructure de cloud public. Chaque service est situé aussi près que possible de l’utilisateur pour en accélérer la performance.
Pour gérer les paramètres de vos organisations, projets, environnements et paquets, nous vous proposons deux outils :
Utilisez l’outil Runtime Admin pour les tâches de routine, comme le déploiement d’un nouveau paquet de code dans un environnement. Utilisez l’API si vous avez besoin d’un contrôle programmatique, par exemple pour créer automatiquement un environnement dans le cadre d’un script d’intégration continue.
Les outils d’administration vous permettent de configurer de nombreux paramètres en libre-service, notamment :
L’accès aux outils d’administration est contrôlé par les rôles définis dans Account Manager et une clé API. Pour les processus d’intégration continue (CI) et de livraison continue (CD), des utilisateurs bots dédiés disposant de leurs propres clés API sont généralement fournis par votre organisation.
Anecdote : comme votre boutique en ligne, l’outil Runtime Admin est une application React headless déployée sur Managed Runtime.
Lors de la création de votre boutique en ligne, gardez à l’esprit les contraintes suivantes des environnements Managed Runtime :
Host correspond à leur nom d’hôte externe tel que défini dans Runtime Admin./ accepte uniquement les requests HTTP GET.Cookie et l’en-tête de réponse HTTP Set-Cookie, ne sont pas pris en charge par défaut. Ils peuvent être activés en définissant l’attribut allow_cookies sur un environnement avec le point de terminaison projects_target_partial_update. Vous pouvez également activer les cookies dans les paramètres d’environnement de Runtime Admin. Les cookies sont pris en charge dans PWA Kit version 3.1.0 ou ultérieure. Voir Personnaliser avec des cookies._ ne sont pas prises en charge. Ces requests seront abandonnées.EC2. Pour autoriser les requests de liste provenant de proxys, utilisez CLOUDFRONT_ORIGIN_FACING./mobify est réservé aux points de terminaison gérés. Ces points de terminaison incluent :
/mobify/ping : renvoie un code de réponse HTTP 200 lorsque l’environnement fonctionne correctement./mobify/redirect/$path : Renvoie une réponse similaire à projects_target_redirect_retrieve./mobify/proxy/$name : Renvoie une réponse à partir d’un proxy.x-mobify-cachebreaker: 1ssr_only et ssr_shared du paquet ne peut pas dépasser 249 Mo.application/javascript, application/json, image/png, image/gif, image/jpeg, image/svg+xml, image/webp, text/css, text/plain et aux polices (ttf, woff, woff2, otf, etc.). Tous les autres types de contenu doivent être diffusés par un système externe.Les contraintes des proxys Managed Runtime sont différentes.
Vous pouvez vous abonner aux mises à jour concernant la disponibilité des services Managed Runtime sur Salesforce Status.
Maintenant que vous avez un aperçu des principales parties de Managed Runtime, il est temps de mettre la main à la pâte ! Nous vous recommandons de commencer par le guide Envoyer en Push et déployer des paquets.
Avant de pouvoir utiliser Managed Runtime et Runtime Admin, ils doivent être activés et vous devez demander d’y avoir accès. Pour activer Managed Runtime et Runtime Admin pour votre organisation, contactez l’équipe de votre compte Salesforce. Pour y accéder, demandez à votre administrateur Commerce Cloud d’ajouter l’un des rôles suivants à votre compte à l’aide d’Account Manager : Managed Runtime User (Utilisateur Managed Runtime) ou Managed Runtime Admin (Administrateur Managed Runtime).
Important