Tous les produits
Search
Centre de documentation

Edge Security Acceleration:Qu'est-ce qu'EdgeRoutine ?

Dernière mise à jour :Sep 16, 2026

EdgeRoutine (ER) est un service de calcul sans serveur qui exécute du code JavaScript sur les points de présence (POP) mondiaux d'Alibaba Cloud. Il prend en charge la syntaxe ES6 et les API standard Web Service Worker. Les requêtes s'exécutent sur le POP le plus proche de chaque utilisateur, offrant des réponses à ultra-faible latence.

image
Important

ER sur Alibaba Cloud DCDN ne sera plus disponible pour les nouveaux utilisateurs à partir du 1er mai 2025 à 00:00 (UTC+8). Les utilisateurs existants ne seront pas affectés.

Pour cette fonctionnalité, migrez vers ESA et utilisez la fonctionnalité ESA Functions and Pages.

Avantages

  • Déploiement mondial et ultra-faible latence : Contrairement à Function Compute ou Elastic Compute Service (ECS), ER ne nécessite aucun déploiement spécifique à une région. Il s'exécute sur un réseau mondial de POP. Les requêtes client sont acheminées vers le POP le plus proche, qui exécute votre code et répond directement, minimisant ainsi la latence.

  • Mise à l'échelle automatique et facturation à l'utilisation : Les plus de 3 200 POP d'Alibaba Cloud offrent une élasticité intégrée : les pics de requêtes sont automatiquement redirigés vers les POP voisins disposant de capacité disponible. ER utilise une facturation à l'utilisation basée sur le nombre d'invocations. Vous ne payez que lorsque votre code s'exécute.

  • Sans serveur et facile à utiliser : Concentrez-vous sur la logique métier sans gérer l'infrastructure (CPU, mémoire, réseau ou système d'exploitation). Déployez votre code en le téléchargeant via la console ou en appelant une API. Le modèle sans serveur réduit les coûts de développement et d'exploitation.

Fonctionnement

image
  • Flux de requête pour CDN/DCDN sans ER : 1. Le client envoie une requête à la passerelle POP. → 2. Le POP vérifie son cache. En cas de succès de cache, le contenu est renvoyé au client. → 3. En cas d'échec de cache, la requête est transférée au serveur d'origine.

  • Flux de requête pour CDN/DCDN avec ER : 1. Le client envoie une requête à la passerelle POP. → 4. ER intercepte la requête et exécute votre code JavaScript. → Votre code peut utiliser fetch pour accéder au cache, récupérer du contenu depuis le serveur d'origine (flèche 5 ou 3) ou appeler d'autres services web publics (flèche 6).

    Remarque

    ER s'exécute après la passerelle, de sorte que vos configurations de domaine dans la console CDN/DCDN — HTTPS, contrôle d'accès, optimisation des performances et règles de mise en cache — restent applicables.

Concepts clés

  • Function : Une Routine est un environnement d'exécution JavaScript sur un POP qui exécute votre code téléchargé. Pour utiliser ER, créez d'abord une Routine. Chaque Routine comprend deux parties : les configurations (nom, description, spécifications CPU/mémoire et liste blanche de noms de domaine) et votre code JavaScript.

    image
  • Version : Les Routines prennent en charge la gestion des versions. Capturez votre code sous forme de version à tout moment pendant le développement. La publication d'une Routine nécessite la sélection d'une version spécifique à déployer. Vous pouvez revenir aux versions précédentes et gérer l'historique du code. Chaque version reçoit un numéro de version généré par le système.

    image
  • Environment : ER fournit des environnements de staging, de production et canary pour le développement, les tests et le déploiement.

    image
    • Environnement de staging : Un nœud périphérique indépendant pour tester votre code. Il simule la production mais reste totalement isolé : les modifications apportées ici n'affectent pas la production. Accédez-y en ajoutant l'adresse IP de staging fournie à votre fichier hosts.

    • Environnement de production : L'environnement actif, composé de POP distribués à l'échelle mondiale. Après les tests en staging, publiez votre code en production. ER met automatiquement à l'échelle les nœuds en fonction du volume de requêtes ; la distribution régionale réelle peut varier.

    • Environnement canary : Un déploiement direct en production risque d'affecter tous les utilisateurs en cas d'erreurs. Utilisez les versions canary pour étendre progressivement la portée du déploiement. Environnement canary (facultatif).

  • Domain Name : Après avoir créé et publié une Routine, vous avez besoin d'un nom de domaine comme point d'entrée client. ER prend uniquement en charge les noms de domaine accélérés d'Alibaba Cloud CDN ou DCDN comme points d'entrée. Associez votre Routine à un nom de domaine accéléré dans la console CDN ou DCDN.

    image
  • Point of presence (POP) : Le terme « périphérie » fait référence à un déploiement distribué, par opposition à centralisé. Un POP est un nœud CDN/DCDN situé au plus près du client et qui traite les requêtes entrantes.

Limitations

Élément

Limite

Description

Temps CPU

5 ms, 50 ms ou 100 ms

Temps CPU par exécution ER (hors attente E/S). Choisissez parmi les spécifications de 5 ms, 50 ms ou 100 ms. Facturation.

Mémoire

128 Mo

Mémoire totale par nom de domaine sur une seule machine physique. Toutes les requêtes pour ce nom de domaine sur la machine partagent ce pool.

Temps d'exécution (RT)

120 s

Temps de réponse total maximal par exécution ER, y compris l'attente E/S.

Temps d'attente

10 secondes

Temps maximal pendant lequel la passerelle attend une réponse ER. Si aucune donnée n'est renvoyée dans un délai de 10 secondes, la passerelle interrompt la connexion et renvoie un code d'état 504.

Taille du package de code

4 Mo

Taille maximale du fichier de code JavaScript par Routine.

Nombre de sous-requêtes

4

Nombre maximal de requêtes fetch par exécution ER.

Langage de programmation

JavaScript (syntaxe ES6)

Seul JavaScript est pris en charge. Vous devez maîtriser la programmation JavaScript.

Nombre de Routines

50

Nombre maximal de Routines par compte Alibaba Cloud.

Nombre de versions

10

Nombre maximal de versions par Routine.

Protocoles pris en charge

HTTPS uniquement

WebSocket, TCP et UDP ne sont pas pris en charge.

Sous-requêtes imbriquées

Non pris en charge

Une instance ER ne peut pas effectuer de fetch sur un nom de domaine qui déclenche une autre instance ER.