Cette rubrique vous guide tout au long du processus d'utilisation d'EdgeRoutine, depuis l'activation du service jusqu'au déploiement de votre première routine.
Alibaba Cloud DCDN cessera de proposer la fonctionnalité EdgeRoutine aux nouveaux utilisateurs à 00:00 (UTC+8) le 1er mai 2025. Les utilisateurs existants ne sont pas concernés.
Si vous avez besoin de cette fonctionnalité, nous vous recommandons de migrer vers le service ESA et d'utiliser la fonctionnalité Functions and Pages d'ESA.
Flux de travail
Pour utiliser EdgeRoutine, vous devez d'abord activer DCDN. La figure suivante illustre le flux de travail.
EdgeRoutine est actuellement en version bêta et n'est disponible que pour certains clients. Si la bande passante de pointe quotidienne de votre service Alibaba Cloud CDN ou DCDN dépasse 500 Mbps, vous pouvez ouvrir un ticket pour demander l'accès. Une fois votre demande approuvée, l'élément de menu EdgeRoutine apparaît dans le volet de navigation.
Activer le service EdgeRoutine
Connectez-vous à la console DCDN.
Dans le volet de navigation de gauche, cliquez sur EdgeRoutine.
Cliquez sur pour activer le service.
Créer et configurer une routine
Connectez-vous à la console DCDN.
Dans le volet de navigation de gauche, cliquez sur EdgeRoutine.
-
Si vous utilisez EdgeRoutine pour la première fois, vous devez d'abord créer un sous-domaine.
-
Sur la page EdgeRoutine, cliquez sur Create Subdomain.

-
Dans la boîte de dialogue Create Subdomain, saisissez un nom de sous-domaine.
RemarqueUn sous-domaine sert de référentiel pour toutes vos routines. Le sous-domaine ne peut pas être modifié une fois créé.
Le sous-domaine est un identifiant unique pour chaque utilisateur et fait partie de l'ID de la routine.
Le nom ne doit contenir que des lettres minuscules, des chiffres et des traits d'union (-), et doit comporter au moins deux caractères, par exemple
subdomain-name.
Cliquez sur OK.
-
-
Sur la page EdgeRoutine, cliquez sur Create Routine.

Paramètre
Description
Routine Name
Saisissez un nom pour la routine.
RemarqueThe name can contain lowercase letters, digits, and hyphens (-). The name cannot be less than 2 characters in length. Example: routine-name. The routine name cannot be modified after it is created.
Description
(Facultatif) Description de la routine.
Specification
Temps CPU maximal pour une seule exécution de routine, hors temps d'attente E/S pour les réponses réseau. La durée d'exécution maximale est de 120 secondes et la mémoire disponible est de 128 Mo. Les frais varient en fonction de la spécification sélectionnée. La spécification 50 ms est sélectionnée par défaut. Pour plus d'informations, consultez Facturation d'EdgeRoutine.
CPU Time Slice for Individual Requests: 5 ms
CPU Time Slice for Individual Requests: 50 ms (Par défaut)
CPU Time Slice for Individual Requests: 100 ms
-
Après avoir créé la routine, cliquez sur Details dans la colonne Actions pour ouvrir sa page de détails. Chaque environnement (production, staging et canary facultatif) dispose d'une configuration indépendante que vous pouvez modifier.
Paramètre
Description
Routine Specifications
Temps CPU maximal pour une seule exécution de routine, hors temps d'attente E/S pour les réponses réseau. La durée d'exécution maximale est de 120 secondes et la mémoire disponible est de 128 Mo. La spécification 50 ms est sélectionnée par défaut.
CPU Time Slice for Individual Requests: 5 ms
CPU Time Slice for Individual Requests: 50 ms (Par défaut)
CPU Time Slice for Individual Requests: 100 ms
Domain Name Whitelist
Spécifie les domaines qui peuvent être associés à cette routine.
Les domaines génériques sont pris en charge.
Par défaut, la liste d'autorisation de noms de domaine est vide, ce qui permet d'associer n'importe quel domaine à la routine.
RemarquePar exemple, si vous ajoutez
example.comà la liste d'autorisation, seules les requêtes provenant deexample.compeuvent déclencher cette routine. Les requêtes provenant d'autres domaines sont rejetées par la routine.
Associer un domaine à une routine
Une routine nécessite un domaine servant de point d'entrée pour les requêtes client. Vous pouvez utiliser un domaine accéléré par Alibaba Cloud CDN ou DCDN. Après avoir créé et configuré la routine, vous devez lui associer votre domaine Alibaba Cloud CDN ou DCDN. Les requêtes client adressées à ce domaine déclencheront alors la routine. La procédure varie selon la console où votre domaine est hébergé.
Connectez-vous à la console DCDN.
Dans le volet de navigation de gauche, cliquez sur Domain Names.
Sur la page Domain Names, recherchez le nom de domaine cible et cliquez sur Configure.
Dans le volet de navigation de gauche du domaine, cliquez sur EdgeRoutine.
-
Sur la page EdgeRoutine, activez la fonctionnalité et configurez l'Routine ID.

Paramètre
Description
Routine ID
Identifiant unique pour chaque routine. Le format est
routine-name.subdomain.RemarqueDans le volet de navigation de gauche de la console DCDN, cliquez sur EdgeRoutine. Vous pouvez trouver l'ID de la routine correspondante sur la page Function.

Trigger Mode
Les requêtes adressées au domaine ou DCDN déclenchent la routine. Deux modes sont disponibles :
Redirect : Les requêtes adressées au domaine ou DCDN sont entièrement gérées par la routine. Vous pouvez écrire votre propre code pour répondre directement au client, lire depuis le cache à l'aide de l'API Cache ou récupérer du contenu depuis l'origine.
Bypass : Les requêtes adressées au domaine ou DCDN déclenchent uniquement l'exécution de la routine, puis poursuivent avec la configuration ou DCDN habituelle pour rediriger vers l'origine. Ce mode convient aux scénarios tels que l'authentification ou la journalisation.
Redirect to Origin if Error Occurs
Yes : Si l'exécution d'une routine échoue, le point de présence (POP) transfère la requête client vers le serveur d'origine du domaine ou DCDN. Cela vous permet de mettre en œuvre des mécanismes de secours et de reprise après sinistre sur votre serveur d'origine.
No : Si l'exécution d'une routine échoue, le POP renvoie directement un code d'état 5xx au client.
Remarque-
Lors de la première utilisation d'une routine, nous vous recommandons de définir le paramètre Redirect to Origin if Error Occurs sur No. Vous pouvez utiliser le code d'état HTTP 5xx renvoyé pour résoudre les problèmes.
-
En cas d'exception, vous êtes facturé pour le nombre de requêtes retour vers l'origine. Le pourcentage de requêtes retour vers l'origine anormales est très faible et peut être ignoré.
-
Développer et déboguer une routine
Connectez-vous à la console DCDN.
Dans le volet de navigation de gauche, cliquez sur EdgeRoutine.
Sélectionnez la routine que vous avez créée et cliquez sur Details.
Sur la page Details, sélectionnez l'onglet Code pour développer votre EdgeRoutine en JavaScript. L'éditeur inclut un exemple « Hello World » par défaut.

-
Après avoir écrit le code, cliquez sur Release to Staging Environment. Vous pouvez ensuite utiliser l'une des adresses IP de l'environnement de staging fournies pour mapper dans votre fichier hosts local afin de tester et déboguer la routine.
RemarquePour tester, modifiez le fichier hosts de votre machine locale afin de mapper le domaine à l'une des adresses IP de staging fournies. Par exemple :
10.10.10.10 example.com. Remplacez l'adresse IP par l'une des IP fournies et le nom de domaine par le domaine Alibaba Cloud CDN ou DCDN associé à la routine.
Créer une version
Après avoir débogué le code, sur l'onglet Code, cliquez sur Save as Version.
Publier une version
Pour réduire l'impact des démarrages à froid sur les performances métier, EdgeRoutine utilise un mécanisme de mise à jour différée pour la publication des versions. Après la publication d'une nouvelle version, celle-ci est mise à jour de manière asynchrone et prend effet lorsque la première requête arrive sur chaque POP. Par conséquent, vous pouvez recevoir des réponses de la version précédente pendant une courte période après la publication. Il s'agit d'un comportement attendu, et non d'un bug.
Sur la page Details, sélectionnez l'onglet Versions. Choisissez un ID de version et cliquez sur Release dans la colonne Actions.
-
Sélectionnez l'environnement vers lequel publier : Staging Environment, Production Environment ou Canary Environment.
RemarqueWe recommend that you release a routine to the canary environments before you release it to the production environments.
Cliquez sur OK. La nouvelle version sera déployée sur les POPs de l'environnement sélectionné.
Maintenance des routines
Les étapes précédentes décrivent comment configurer et publier une routine d'exemple « Hello World ».
Pour mettre à jour et itérer le code de la routine, suivez les étapes décrites dans les sections « Développer et déboguer une routine », « Créer une version » et « Publier une version ».
Pour ajuster les configurations de la routine, telles que les spécifications ou la liste d'autorisation de noms de domaine, consultez la section « Créer et configurer une routine ».
Pour désactiver la fonctionnalité EdgeRoutine pour un domaine Alibaba Cloud CDN ou DCDN, supprimez la configuration EdgeRoutine des paramètres d'association du domaine.