Cette rubrique explique comment utiliser EdgeRoutine, de l'activation du service au déploiement de votre première routine.
Alibaba Cloud DCDN cessera de proposer la fonctionnalité EdgeRoutine aux nouveaux utilisateurs à partir du 1er mai 2025 à 00:00 (UTC+8). Les utilisateurs existants ne sont pas concernés.
Si vous avez besoin de cette fonctionnalité, nous vous recommandons de passer au service ESA et d'utiliser la fonctionnalité Functions and Pages d'ESA.
Flux de travail
Pour utiliser EdgeRoutine, activez d'abord DCDN. La figure suivante illustre le flux de travail.
EdgeRoutine est actuellement en version bêta et réservé à certains clients. Si le pic de bande passante quotidien de votre service Alibaba Cloud CDN ou DCDN dépasse 500 Mbit/s, soumettez 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, créez d'abord 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. Il ne peut pas être modifié après sa création.
Ce sous-domaine constitue un identifiant unique pour chaque utilisateur et fait partie de l'ID de la routine.
Le nom doit contenir uniquement des lettres minuscules, des chiffres et des traits d'union (-), et comporter au moins deux caractères (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 selon 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, préproduction et canary facultatif) dispose d'une configuration indépendante modifiable.
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
Définit les domaines pouvant ê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 d'example.compeuvent déclencher cette routine. Les requêtes provenant d'autres domaines sont rejetées.
Associer un domaine à une routine
Une routine nécessite un domaine pour servir de point d'entrée aux 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, associez-lui votre domaine Alibaba Cloud CDN ou DCDN. Les requêtes client vers 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 de chaque routine. Le format est
routine-name.subdomain.RemarqueDans le volet de navigation de gauche de la console DCDN, cliquez sur EdgeRoutine. Vous trouverez 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 : La routine traite intégralement les requêtes adressées au domaine ou DCDN. Vous pouvez écrire votre propre code pour répondre directement au client, lire depuis le cache via l'API Cache ou récupérer du contenu à l'origine.
Bypass : Les requêtes adressées au domaine ou DCDN déclenchent uniquement l'exécution de la routine, puis suivent la configuration ou DCDN standard 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 au serveur d'origine du domaine ou DCDN. Cela vous permet de mettre en œuvre des mécanismes de repli et de reprise après sinistre sur votre serveur d'origine.
No : Si l'exécution d'une routine échoue, le POP retourne directement un code d'état 5xx au client.
Remarque-
Lors de votre 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 ainsi utiliser le code d'état HTTP 5xx retourné pour résoudre les problèmes.
-
En cas d'exception, le nombre de requêtes vers l'origine vous est facturé. Le pourcentage de requêtes anormales vers l'origine 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 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. Utilisez ensuite l'une des adresses IP de l'environnement de préproduction fournies pour configurer votre fichier hosts local afin de tester et déboguer la routine.
RemarquePour tester, modifiez le fichier hosts de votre machine locale afin d'associer le domaine à l'une des adresses IP de préproduction fournies. Par exemple :
10.10.10.10 example.com. Remplacez l'adresse IP par l'une des adresses fournies et le nom de domaine par le domaine Alibaba Cloud CDN ou DCDN associé à la routine.
Créer une version
Une fois le code débogué, dans l'onglet Code, cliquez sur Save as Version.
Publier une version
Afin de 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. Une nouvelle version publiée est mise à jour de manière asynchrone et prend effet lors de l'arrivée de la première requête sur chaque POP. Par conséquent, vous pouvez recevoir des réponses de la version précédente pendant une courte période suivant 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 de publication : 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 POP de l'environnement sélectionné.
Maintenance des routines
Les étapes précédentes décrivent la configuration et la publication d'un exemple de routine « Hello World ».
Pour mettre à jour et itérer sur le code d'une routine, suivez les étapes des sections « Développer et déboguer une routine », « Créer une version » et « Publier une version ».
Pour ajuster les configurations d'une routine (spécifications, liste d'autorisation de noms de domaine, etc.), reportez-vous à 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.