La récupération d'origine par plage permet aux nœuds d'inclure des informations de plage dans les requêtes HTTP lors de la récupération du contenu depuis le serveur d'origine. Le serveur d'origine ne renvoie que la plage de contenu spécifiée, en fonction de l'en-tête Range présent dans la requête. Cette fonctionnalité améliore l'efficacité de la distribution des fichiers, augmente les taux de succès du cache, réduit le trafic vers l'origine et la charge du serveur, et accélère les temps de réponse.
Fonctionnement
L'en-tête de requête HTTP Range spécifie la plage de contenu à récupérer. Par exemple, Range: bytes=0-100 demande les 101 premiers octets d'un fichier.
Une fois la récupération d'origine par plage activée, si CDNDCDN reçoit une requête utilisateur et que la ressource n'est pas mise en cache sur le nœud CDNDCDN ou a expiré, le nœud utilise des requêtes par plage pour récupérer la partie requise de la ressource depuis le serveur d'origine par segments, puis la met en cache localement.
Prérequis
Le serveur d'origine doit prendre en charge les requêtes par plage. L'en-tête de requête HTTP doit contenir le champ Range et le serveur d'origine doit répondre avec le code HTTP 206 Partial Content. Si le serveur d'origine ne prend pas en charge les requêtes par plage, l'activation de la récupération d'origine par plage empêche la mise en cache des ressources.
Considérations
Avant de configurer la récupération d'origine par plage, tenez compte des points suivants :
Impact sur les QPS — L'activation de la récupération d'origine par plage augmente le nombre de requêtes par seconde (QPS) envoyées au serveur d'origine. Si des limites de débit sont configurées sur le serveur d'origine, prenez les mesures nécessaires pour éviter de les atteindre. Utilisez DescribeL2VipsByDomain pour interroger les adresses IP des nœuds de récupération d'origine DCDN et ajoutez-les à la liste d'autorisation d'adresses IP du serveur d'origine.
Priorité du moteur de règles — Lorsque la récupération d'origine par plage fait référence aux conditions de règle dans le moteur de règles, l'ordre d'exécution suit la priorité des conditions de règle configurées dans le moteur de règles, et non la priorité configurée pour cette fonctionnalité.
Procédure
CDN DCDN
Dans l'onglet Origin Fetch, localisez l'option Range Origin Fetch et cliquez sur Modify.
-
Définissez la récupération d'origine par plage sur Disable, Follow Client Range Request ou Enable (Recommended If Large Files Requested) en vous basant sur les descriptions des paramètres ci-dessous.
Lorsque vous définissez la récupération d'origine par plage sur Enable (Recommended If Large Files Requested) ou Follow Client Range Request, vous pouvez également configurer l'option Chunk Size. La taille de bloc par défaut est de 512 Ko.
Parameter
Option
Description
Range Origin Fetch
Disable
La récupération d'origine par plage est désactivée par défaut. Que le client utilise ou non des requêtes par plage vers le nœud, ce dernier demande le fichier entier au serveur d'origine. Cela entraîne une efficacité de distribution des fichiers plus faible dans les scénarios impliquant des fichiers volumineux.
Follow Client Range Request
Le nœud envoie des requêtes par plage au serveur d'origine uniquement lorsque le client inclut
Rangedans ses requêtes. La première requête de récupération d'origine arrondit la taille à un multiple supérieur de la taille de bloc, en se basant sur la plage indiquée dans la requête du client. Toutes les requêtes suivantes utilisent la taille de bloc spécifiée.Enable (Recommended If Large Files Requested)
Le nœud envoie toujours des requêtes par plage au serveur d'origine, que le client inclue ou non
Rangedans ses requêtes. Toutes les requêtes de récupération d'origine par plage utilisent la taille de bloc spécifiée. Cette option est recommandée pour les scénarios impliquant des fichiers volumineux.Chunk Size
512 KB, 1 MB, 2 MB, 4 MB
Lorsque la récupération d'origine par plage est définie sur Follow Client Range Request ou Enable (Recommended If Large Files Requested), vous pouvez configurer la taille de bloc. La taille de bloc par défaut est de 512 Ko.
Rule Conditions
Disable
Les conditions de règle identifient les informations de paramètre transmises dans les requêtes utilisateur afin de déterminer si la configuration de récupération d'origine par plage s'applique à une requête spécifique.